GeoPackage

This page describes the schema for publishing, storing or exchanging data that conforms to the OFDS data model as a GeoPackage. A GeoPackage is a SQLite database. This page provides an overview of the structure of an OFDS GeoPackage, and detailed definitions for each of the tables in the database.

The OFDS GeoPackage format is based on GeoPackage 1.4.0, including the GeoPackage Schema Extension and GeoPackage Related Tables Extension.

Template

The OFDS GeoPackage template implements the structure described on this page.

Tip

You can explore the structure of the OFDS GeoPackage template in common GIS tools such as QGIS, or you can connect directly to the SQLite database using your preferred SQL client.

Overview

The following diagram illustrates how the main entities and relationships in the OFDS data model are represented in an OFDS GeoPackage. Features (spatial entities) are coloured yellow, non-spatial entities are coloured blue, and associative tables (M:N relationships) are coloured grey. Only primary and foreign keys are shown in the diagram. For a complete description of the columns in each table, refer to the table definitions.

        ---
config:
  layout: elk
---
erDiagram
    contracts {
        INTEGER id PK 
        INTEGER network_id FK 
    }

    networks {
        INTEGER id PK 
    }

    nodes {
        INTEGER id PK 
        INTEGER network_id FK 
        INTEGER phase FK 
        INTEGER supportingInfrastructure__owner FK 
        INTEGER transmissionMediumOwner FK 
    }

    organisations {
        INTEGER id PK 
        INTEGER network_id FK 
    }

    phases {
        INTEGER id PK 
        INTEGER network_id FK 
    }

    relation_contracts_relatedPhases {
        INTEGER base_id PK,FK 
        INTEGER related_id PK,FK 
    }

    relation_nodes_networkProviders {
        INTEGER base_id PK,FK 
        INTEGER related_id PK,FK 
    }

    relation_spans_networkProviders {
        INTEGER base_id PK,FK 
        INTEGER related_id PK,FK 
    }

    relation_spans_wayleaves {
        INTEGER base_id PK,FK 
        INTEGER related_id PK,FK 
    }

    spans {
        INTEGER cableType FK 
        INTEGER codeployment FK 
        INTEGER end FK 
        INTEGER id PK 
        INTEGER network_id FK 
        INTEGER phase FK 
        INTEGER start FK 
        INTEGER supplier FK 
        INTEGER supportingInfrastructure__owner FK 
        INTEGER transmissionMediumOwner FK 
    }

    wayleaves {
        INTEGER grantor FK 
        INTEGER id PK 
        INTEGER network_id FK 
    }

    contracts }o--|| networks : "network_id"
    relation_contracts_relatedPhases }o--|| contracts : "base_id"
    nodes }o--|| networks : "network_id"
    organisations }o--|| networks : "network_id"
    phases }o--|| networks : "network_id"
    spans }o--|| networks : "network_id"
    wayleaves }o--|| networks : "network_id"
    nodes }o--|| organisations : "supportingInfrastructure__owner"
    nodes }o--|| organisations : "transmissionMediumOwner"
    nodes }o--|| phases : "phase"
    relation_nodes_networkProviders }o--|| nodes : "base_id"
    spans }o--|| nodes : "end"
    spans }o--|| nodes : "start"
    relation_nodes_networkProviders }o--|| organisations : "related_id"
    relation_spans_networkProviders }o--|| organisations : "related_id"
    spans }o--|| organisations : "supplier"
    spans }o--|| organisations : "supportingInfrastructure__owner"
    spans }o--|| organisations : "transmissionMediumOwner"
    wayleaves }o--|| organisations : "grantor"
    relation_contracts_relatedPhases }o--|| phases : "related_id"
    spans }o--|| phases : "phase"
    relation_spans_networkProviders }o--|| spans : "base_id"
    relation_spans_wayleaves }o--|| spans : "base_id"
    relation_spans_wayleaves }o--|| wayleaves : "related_id"

    classDef feature fill:#f3ffa6ff,stroke:#bbd034
    classDef attribute fill:#cec7ffff,stroke:#110e27
    classDef mapping fill:#efefefff,stroke:#434343ff

    class nodes,spans feature
    class networks,organisations,phases,contracts,wayleaves attribute
    class relation_contracts_relatedPhases,relation_spans_networkProviders,relation_spans_wayleaves,relation_nodes_networkProviders mapping
    direction BT

    

Features (spatial entities)

Nodes and spans are represented as features in Vector Feature User Data Tables, which contain both geometries and attributes.

Example: Nodes

Nodes are spatial entities with a Point geometry so they are represented as spatial features in the nodes vector feature user data table.

Node geometries are stored in the geom column of the nodes table in GeoPackage SQL Geometry Binary Format. Node attributes are stored in the other columns of the nodes table.

Geometry

Node geometry

Attributes

id

name

status

1

Accra

operational

Non-spatial entities

Non-spatial entities, such as organisations, are represented as non-spatial attribute sets in Attributes User Data Tables, which contain only attributes and no geometries.

Example: Organisations

Organisations are non-spatial entities (they have no associated geometry) so they are represented as non-spatial attribute sets in the organisations attributes user data table.

Attributes

id

name

country

website

1

FibreCo

gh

http://www.example.com

One-to-many relationships

One-to-many (1:N) relationships between entities in the OFDS data model, such as a network with many nodes, are represented as foreign key relationships. Attributes of type array in the OFDS data model, such as a span’s transmission medium are also represented as foreign key relationships.

Example: Networks and nodes

The 1:N relationship between a network and the nodes that belong to it is represented as a foreign key (network_id) in the nodes table that references the id field in the networks table.

            erDiagram
        direction TB
        networks ||--o{ nodes : ""
        networks {
            INTEGER id PK "1"
            TEXT name "Ghana Fibre Network"
    
        }
        nodes {
            INTEGER id PK "1"
            BLOB geom "..."
            INTEGER network_id FK "1"
            TEXT name "Accra"
            TEXT status "operational"
        }

        classDef feature fill:#f3ffa6ff,stroke:#bbd034
        classDef attribute fill:#cec7ffff,stroke:#110e27

        class nodes feature
        class networks attribute

    

Many-to-many relationships

Many-to-many (M:N) relationships, such as a node with many network providers, are represented as User-Defined Mapping Tables.

Example: M:N relationships

The M:N relationship between a node and the organisations that operate active network infrastructure located at the node is represented by the relation_nodes_networkProviders user-defined mapping table.

The mapping table relates records in the nodes table to records in the organisations table.

            erDiagram
        direction TB
        nodes ||--o{ relation_nodes_networkProviders : ""
        relation_nodes_networkProviders }o--|| organisations : ""
        nodes {
            INTEGER id PK "1"
            BLOB geom "..."
            TEXT name "Accra"
        }
        relation_nodes_networkProviders {
            INTEGER base_id FK "1"
            INTEGER related_id FK "1"
        }
        organisations {
            INTEGER id PK "1"
            TEXT name "FibroCo"
        }

        classDef feature fill:#f3ffa6ff,stroke:#bbd034
        classDef attribute fill:#cec7ffff,stroke:#110e27
        classDef mapping fill:#efefefff,stroke:#434343ff

        class nodes feature
        class organisations attribute
        class relation_nodes_networkProviders mapping

    

Codelists

Some attributes in the OFDS data model refer to codelists to limit and standardise the possible values of the attribute.

The representation of attributes that reference a codelist depends on whether the attribute takes a single value or an array of values from the codelist, and on whether the codelist is closed (i.e. the attributes value must belong to the codelist) or open (i.e. the attribute can take values that do not belong to the codelist):

Attribute data type

Codelist type

Representation

Text

Closed

A column whose value is constrained to the codelist by an enum defined using the GeoPackage Schema Extension.

Text

Open

A column with a foreign key relationship to a table containing the values in the codelist.

Array

Open or Closed

An M:N relationship between the Vector Feature or Attributes User Data Table that represents the entity to which the attribute belongs, and a table containing the values in the codelist.

Example: Text attribute with a closed codelist

The Node Status attribute is represented by the status column in the nodes table, with an enum defined for the codes in the nodeStatus codelist.

nodes table

id

name

status

1

Accra

operational

2

Kumasi

underConstruction

enum

value

description

proposed

Proposed: Planning for the node is at an early stage and financing for its construction is not yet finalised.

planned

Planned: Planning for the node is at an advanced stage and financing for its construction is finalised.

underConstruction

Under construction: Construction of the passive physical infrastructure for the node is in progress.

inactive

Inactive: Construction of the passive network infrastructure is complete, but the node is not yet operational.

operational

Operational: The active network infrastructure for at least one network provider at the node is live and carrying traffic.

decommissioned

Decommissioned: The node is no longer operational.

Example: Text attribute with an open codelist

The Contract Type attribute is represented by the type column in the contracts table, with a foreign key to the codelist_open_contractType codelist table, which contains the codes in the contractType codelist.

            erDiagram
        direction TB
        codelist_open_contractType ||--o{ contracts : ""
        codelist_open_contractType {
            INTEGER id PK "1"
            TEXT code "ppp"
            TEXT description "Public Private Partnership (PPP): A long-term contract..."
    
        }
        contracts {
            INTEGER id PK "2"
            TEXT title "NextGen Phase 2 Construction Contract"
            INTEGER type FK "1"
        }

        classDef attribute fill:#cec7ffff,stroke:#110e27

        class codelist_open_contractType attribute

    
contracts table

id

title

type

1

NextGen Phase 1 Construction Contract

2

2

NextGen Phase 2 Construction Contract

1

codelist_open_contractType table

id

code

description

1

ppp

Public Private Partnership (PPP): A long-term contract between a private party and a government entity,for providing a public asset or service,in which the private party bears significant risk and management responsibility and remuneration is linked to performance.

2

private

Private: A contract in which the private sector takes ownership of the network and responsibility for its operation.

3

public

Public: A contract in which the public sector owns the network and is responsible for its operation.

Example: Array attribute with a codelist

The Node Type attribute is represented by the type column in the nodes table, with an M:N relationship (relation_nodes_type) to the codelist_open_nodeType codelist table, which contains the codes in the nodeType codelist.

            erDiagram
        direction TB
        nodes ||--o{ relation_nodes_type : ""
        relation_nodes_type }o--|| codelist_open_nodeType : ""
        
        nodes {
            INTEGER id PK "1"
            TEXT name "Accra"
        }
        relation_nodes_type {
            INTEGER base_id FK "1"
            INTEGER related_id FK "1"
        }
        codelist_open_nodeType {
            INTEGER id PK "1"
            TEXT code "addDropSite"
            TEXT description "Add drop site: A point at which..."
        }

        classDef feature fill:#f3ffa6ff,stroke:#bbd034
        classDef mapping fill:#efefefff,stroke:#434343ff

        class nodes feature
        class relation_nodes_type mapping

    
nodes table

id

name

1

Accra

codelist_open_nodeType table

id

code

description

1

addDropSite

Add drop site: A point at which individual digital bit streams can be added to, or dropped from, a multiplexed signal in order to redirect bit streams between network paths.

relation_nodes_type table

base_id

related_id

1

1

Table definitions

Vector feature user data tables

Vector Feature User Data Tables represent spatial entities in the OFDS data model.

nodes

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

geom

BLOB

ofds_id

TEXT

Identifier

A locally-unique identifier for this node.

name

TEXT

Name

A name for this node. The name should be unique amongst the nodes belonging to a network.

phase

INTEGER

FK

Phase

The phase to which this node belongs.

status

TEXT

Status

The status of this node, from the closed nodeStatus codelist.

address__streetAddress

TEXT

Address Street address

The physical address of this node. The street address. For example, 1600 Amphitheatre Pkwy.

address__locality

TEXT

Address Locality

The physical address of this node. The locality. For example, Mountain View.

address__region

TEXT

Address Region

The physical address of this node. The region. For example, CA.

address__postalCode

TEXT

Address Postal code

The physical address of this node. The postal code. For example, 94043.

address__country

TEXT

Address Country

The physical address of this node. The country in which the address is physically located, from the closed country codelist.

supportingInfrastructure__type

INTEGER

FK

Supporting infrastructure Type

The infrastructure that supports this node. The type of supporting infrastructure, from the open nodeSupportingInfrastructure codelist.

supportingInfrastructure__description

TEXT

Supporting infrastructure Description

The infrastructure that supports this node. A description of the supporting infrastructure for this node.

supportingInfrastructure__owner

INTEGER

FK

Supporting infrastructure Owner

The infrastructure that supports this node. The organisation that owns the supporting infrastructure.

supportingInfrastructure__spareCapacity

TEXT

Supporting infrastructure Spare capacity

The infrastructure that supports this node. Whether the supporting infrastructure has spare capacity for the installation of additional network equipment.

accessPoint

TEXT

Access point

Whether active or passive transmission equipment is installed at this node which is capable of providing access to the network.

power

TEXT

Power availability

Whether power for active network equipment is available at this node.

transmissionMediumOwner

INTEGER

FK

Transmission medium owner

The organisation that owns the transmission media for this node, i.e. the passive network equipment such as splitters, combiners and fibre distribution panels.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

transmissionMediumOwner

FK(organisations.id)

supportingInfrastructure__owner

FK(organisations.id)

phase

FK(phases.id)

supportingInfrastructure__type

FK(codelist_open_nodeSupportingInfrastructure.id)

spans

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

geom

BLOB

ofds_id

TEXT

Identifier

A locally-unique identifier for this span.

name

TEXT

Name

A name for this span. The name should be unique amongst the spans belonging to a network.

phase

INTEGER

FK

Phase

The phase to which this span belongs.

status

TEXT

Status

The status of the network infrastructure for this span, from the closed spanStatus codelist.

readyForServiceDate

TEXT

Ready for service date

The date this span was ready to carry traffic. For spans with multiple network providers, the earliest of the dates at which each provider’s network was ready to carry traffic on this span.

start

INTEGER

FK

Start

The identifier of one of two nodes that this span connects. If the span is directed, it represents the starting point of the span.

end

INTEGER

FK

End

The identifier of one of two nodes that this span connects. If the span is directed, it represents the end point of the span.

directed

TEXT

Directed

Whether this span is directed. If the span is directed, the span begins at the node referenced in .start and ends at the node referenced in .end. Otherwise, the span connects the nodes referenced in .start and .end with no direction implied.

transmissionMediumOwner

INTEGER

FK

Owner

The organisation that owns the transmission media for this span, i.e. the fibre cables.

supplier

INTEGER

FK

Supplier

The organisation responsible for installing the cable for this span.

supportingInfrastructure__type

INTEGER

FK

Supporting infrastructure Type

The infrastructure that supports this span. The type of supporting infrastructure, from the open spanSupportingInfrastructure codelist.

supportingInfrastructure__description

TEXT

Supporting infrastructure Description

The infrastructure that supports this span. A description of the supporting infrastructure for this span.

supportingInfrastructure__owner

INTEGER

FK

Supporting infrastructure Owner

The infrastructure that supports this span. The organisation that owns the supporting infrastructure.

supportingInfrastructure__spareCapacity

TEXT

Supporting infrastructure Spare capacity

The infrastructure that supports this span. Whether the supporting infrastructure has spare capacity for the installation of additional fibre cables.

codeployment

INTEGER

FK

Codeployment

The type of utility or transport infrastrucutre with which this span is codeployed.

cableType

INTEGER

FK

Cable type

The type of cable used in this span.

darkFibre

TEXT

Dark fibre availability

Whether access to dark fibre is available on this span.

fibreType

TEXT

Fibre type

The type of fibre used in this span, from the closed fibreType codelist. Further details of the span’s fibre type can be provided in .fibreTypeDetails.

fibreTypeDetails__fibreSubtype

TEXT

Fibre type details Subtype

Further details about this span’s fibre type. The sub-category of this span’s fibre type. For example, G.652.B.

fibreTypeDetails__description

TEXT

Fibre type details Description

Further details about this span’s fibre type. A description of this span’s fibre type.

fibreCount

INTEGER

Fibre count

The number of individual optical fibres in this span.

fibreLength

REAL

Fibre length

The physical length in kilometres, of fibre optic cable used in this span.

capacity

REAL

Equipped capacity

The transmission rate, or throughput, of this span, expressed in Gbit/sec (Gbps). The equipped capacity is the total capacity of the circuits (e.g. E1, DS3, STM-1 etc.) which have been activated in the network transmission equipment of the span. For spans with multiple network providers, the sum of the capacity of each provider’s network on this span. Further details of this span’s capacity can be provided in .capacityDetails. For more information, see equipped capacity.

capacityDetails__description

TEXT

Capacity details Description

Further details about this span’s capacity. A description of this span’s capacity.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

supportingInfrastructure__owner

FK(organisations.id)

supplier

FK(organisations.id)

transmissionMediumOwner

FK(organisations.id)

end

FK(nodes.id)

start

FK(nodes.id)

phase

FK(phases.id)

cableType

FK(codelist_open_cableType.id)

codeployment

FK(codelist_open_codeployment.id)

supportingInfrastructure__type

FK(codelist_open_spanSupportingInfrastructure.id)

Attributes user data tables

Attributes User Data Tables represent non-spatial entities in the OFDS data model.

networks

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

ofds_id

TEXT

UUID

A universally unique identifier for this network, as defined by RFC 4122. For more information, see the identifier reference.

identifier

TEXT

Identifier

A local identifier for this network in an internal system.

name

TEXT

Network name

A name for this network.

website

TEXT

Website

The URL of the website for this network.

publisher__name

TEXT

Publisher Name

The publisher of this network. A name for this organisation.

publisher__identifier__id

TEXT

Publisher Organisation identifier Identifier

The publisher of this network. An identifier for this organisation. The identifier assigned to the organisation in the register identified in .scheme.

publisher__identifier__scheme

INTEGER

FK

Publisher Organisation identifier Scheme

The publisher of this network. An identifier for this organisation. The register from which the identifier in .id is drawn, from the open organisationIdentifierScheme codelist.

publisher__identifier__legalName

TEXT

Publisher Organisation identifier Legal name

The publisher of this network. An identifier for this organisation. The legally registered name of the organisation

publisher__identifier__uri

TEXT

Publisher Organisation identifier URI

The publisher of this network. An identifier for this organisation. A canonical URI for this identifier, such as those provided by Open Corporates. Do not use this field to provide the website of the organisation: instead, use Organisation.website.

publicationDate

TEXT

Publication date

The date when this network was published.

collectionDate

TEXT

Collection date

The date when the location data was collected. If a dataset was produced by digitising a map, the date that the data for the map was collected.

accuracy

REAL

Accuracy

The horizontal uncertainty, in metres, of the coordinates in this dataset relative to the datum of the coordinate reference system specified in crs. Further details about the accuracy of coordinates in this dataset can be provided in .accuracyDetails.

accuracyDetails

TEXT

Accuracy details

Further details about the accuracy specified in accuracy. For example, the confidence level of the accuracy measurement, the methodology used to calculate the accuracy, or a local classification of accuracy.

language

INTEGER

FK

Language

The default language used in text attributes,from the open language codelist. A BCP47 language tag is allowed, if there is a user need for the additional information.

Foreign keys

Column

References

language

FK(codelist_open_language.id)

publisher__identifier__scheme

FK(codelist_open_organisationIdentifierScheme.id)

phases

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

ofds_id

TEXT

Identifier

A locally-unique identifier for this phase.

name

TEXT

Name

A name for this phase. The name should be unique amongst the phases belonging to a network.

description

TEXT

Description

A description for this phase.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

organisations

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

ofds_id

TEXT

Local identifier

A locally-unique identifier for this organisation.

name

TEXT

Name

A name for this organisation. The name should be unique amongst the organisations belonging to a network.

identifier__id

TEXT

Organisation identifier Identifier

An identifier for this organisation. The identifier assigned to the organisation in the register identified in .scheme.

identifier__scheme

INTEGER

FK

Organisation identifier Scheme

An identifier for this organisation. The register from which the identifier in .id is drawn, from the open organisationIdentifierScheme codelist.

identifier__legalName

TEXT

Organisation identifier Legal name

An identifier for this organisation. The legally registered name of the organisation

identifier__uri

TEXT

Organisation identifier URI

An identifier for this organisation. A canonical URI for this identifier, such as those provided by Open Corporates. Do not use this field to provide the website of the organisation: instead, use Organisation.website.

country

TEXT

Country

The country in which this organisation is legally registered, from the closed country codelist.

roleDetails

TEXT

Role details

Further details about this organisation’s roles in the network

website

TEXT

Website

The URL of the website for this organisation.

logo

TEXT

Logo

The URL of the logo for this organisation.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

identifier__scheme

FK(codelist_open_organisationIdentifierScheme.id)

contracts

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

ofds_id

TEXT

Identifier

A locally-unique identifier for this contract.

title

TEXT

Title

A title for this contract.

description

TEXT

Description

A description for this contract.

type

INTEGER

FK

Type

The type of this contract, from the open contractType codelist.

value__amount

REAL

Value Amount

The value of this contract. The amount of this value.

value__currency

TEXT

Value Currency

The value of this contract. The currency of this value, from the closed currency codelist.

dateSigned

TEXT

Date signed

The date this contract was signed.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

type

FK(codelist_open_contractType.id)

wayleaves

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

ofds_id

TEXT

Identifier

A locally-unique identifier for this wayleave.

grantor

INTEGER

FK

Grantor

The entity that grants a network operator the legal right to install, maintain, or operate telecommunications infrastructure on, over, or under property or assets.

yearSigned

INTEGER

Year signed

The year in which this wayleave was signed.

term__indefinite

TEXT

Term Indefinite

Information about the duration of the wayleave. Whether the term of wayleave is indefinite, i.e. without an end date.

term__years

INTEGER

Term Years

Information about the duration of the wayleave. If the wayleave’s term is definite, its duration in years.

cost__recurring

TEXT

Cost Recurring

Information about the cost of the wayleave. Whether this is a recurring cost.

cost__perMetre__amount

REAL

Cost Cost per metre Amount

Information about the cost of the wayleave. The average cost per metre for this wayleave. Wayleave costs can include a mix of per length and per item fees, e.g. a fee per metre of cable and a fee per pole. The average cost per metre should be calculated by dividing the total cost of all fees by the total length in metres of cable covered by the wayleave. For recurring fees, the average cost per metre should be annualised. The amount of this value.

cost__perMetre__currency

TEXT

Cost Cost per metre Currency

Information about the cost of the wayleave. The average cost per metre for this wayleave. Wayleave costs can include a mix of per length and per item fees, e.g. a fee per metre of cable and a fee per pole. The average cost per metre should be calculated by dividing the total cost of all fees by the total length in metres of cable covered by the wayleave. For recurring fees, the average cost per metre should be annualised. The currency of this value, from the closed currency codelist.

network_id

INTEGER

FK

Network ID

Foreign keys

Column

References

network_id

FK(networks.id)

grantor

FK(organisations.id)

contracts_documents

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

title

TEXT

Title

A title for this document.

description

TEXT

Description

A description of this document. Descriptions should not exceed 250 words. If the document is not accessible online, the description should describe how to access a copy of the document.

url

TEXT

URL

A web address for accessing this document.

format

INTEGER

FK

Format

The format of this document, from the open mediaType codelist.

network_id

INTEGER

FK

Network ID

contract_id

INTEGER

FK

Contract ID

Foreign keys

Column

References

contract_id

FK(contracts.id)

network_id

FK(networks.id)

format

FK(codelist_open_mediaType.id)

nodes_internationalConnections

Columns

Name

Type

Constraints

Title

Description

id

INTEGER

PK

streetAddress

TEXT

Street address

The street address. For example, 1600 Amphitheatre Pkwy.

locality

TEXT

Locality

The locality. For example, Mountain View.

region

TEXT

Region

The region. For example, CA.

postalCode

TEXT

Postal code

The postal code. For example, 94043.

country

TEXT

Country

The country in which the address is physically located, from the closed country codelist.

network_id

INTEGER

FK

Network ID

node_id

INTEGER

FK

Nodes ID

Foreign keys

Column

References

node_id

FK(nodes.id)

network_id

FK(networks.id)

Codelist tables

Each codelist table has the following columns:

Name

Type

Not Null

Auto Increment

id

INTEGER

FALSE

TRUE

code

TEXT

FALSE

FALSE

description

TEXT

FALSE

FALSE

An OFDS GeoPackage includes the following codelist tables:

Table

Codelist

codelist_open_organisationIdentifierScheme

organisationIdentifierScheme

codelist_open_language

language

codelist_open_nodeSupportingInfrastructure

nodeSupportingInfrastructure

codelist_open_spanSupportingInfrastructure

spanSupportingInfrastructure

codelist_open_codeployment

codeployment

codelist_open_cableType

cableType

codelist_open_contractType

contractType

codelist_open_mediaType

mediaType

codelist_open_nodeType

nodeType

codelist_open_nodeTechnologies

nodeTechnologies

codelist_closed_transmissionMedium

transmissionMedium

codelist_closed_deployment

deployment

codelist_open_spanTechnologies

spanTechnologies

codelist_closed_country

country

codelist_open_organisationRole

organisationRole

User-defined mapping tables

Each user defined mapping table has the following columns:

Name

Type

Not Null

Auto Increment

base_id

INTEGER

TRUE

TRUE

related_id

INTEGER

TRUE

TRUE

An OFDS GeoPackage includes the following user-defined mapping tables:

Table

base_id FK

related_id FK

relation_nodes_type

nodes.id

codelist_open_nodeType.id

relation_nodes_technologies

nodes.id

codelist_open_nodeTechnologies.id

relation_nodes_networkProviders

nodes.id

organisations.id

relation_spans_networkProviders

spans.id

organisations.id

relation_spans_transmissionMedium

spans.id

codelist_closed_transmissionMedium.id

relation_spans_deployment

spans.id

codelist_closed_deployment.id

relation_spans_technologies

spans.id

codelist_open_spanTechnologies.id

relation_spans_wayleaves

spans.id

wayleaves.id

relation_spans_countries

spans.id

codelist_closed_country.id

relation_phases_funders

phases.id

organisations.id

relation_contracts_relatedPhases

contracts.id

phases.id

relation_organisations_roles

organisations.id

codelist_open_organisationRole.id