UNECE/CEFACT package codes

core

Files Size Format Created Updated License Source
2 88kB csv zip 1 week ago ODC-PDDL-1.0 UNECE
unece-package-codes Coded representations of the package type names used in International Trade (UNECE/CEFACT Trade Facilitation Recommendation No.21) Source of information is from the UNECE website: read more
Download

Data Files

File Description Size Last changed Download Other formats
data [csv] 18kB data [csv] data [json] (33kB)
datapackage_zip [zip] Compressed versions of dataset. Includes normalized CSV and JSON data with original data and datapackage.json. 19kB datapackage_zip [zip]

data  

This is a preview version. There might be more data in the original version.

Field information

Field Name Order Type (Format) Description
Code 1 string A 2 character alpha numeric code value agreed by the UN/CEFACT content management group
Name 2 string
Description 3 string

datapackage_zip  

This is a preview version. There might be more data in the original version.

Read me

unece-package-codes

Coded representations of the package type names used in International Trade (UNECE/CEFACT Trade Facilitation Recommendation No.21)

Source of information is from the UNECE website: http://www.unece.org/tradewelcome/areas-of-work/un-centre-for-trade-facilitation-and-e-business-uncefact/outputs/cefactrecommendationsrec-index/list-of-trade-facilitation-recommendations-n-21-to-24.html

All data from UNECE has to be available in an easily distributable format, in this case it is an .xls file to process I simply removed any lines with a status of ‘X’ and removed the numeric code column as it’s of little useable value

Meaning of status codes:

A plus sign (+) Added. New unit added in this release of the code list.; A hash sign (#) Changed name. Changes to the unit name in this release of the code list; A vertical bar (¦) Changed characteristic(s). Changes other than to the unit name in this release of the code list, e.g. a change to the numeric code. A letter X (X) Marked as deleted. Code entries marked as deleted will be retained indefinitely in the code lists. When appropriate, these entries may subsequently be reinstated via the maintenance process; An equals Reinstated. Code entries previously sign (=) Marked as deleted and reinstated in this release of the code list.

Requests for addition to the codes should be made to the Information Content Management Group (ICG) at [email protected]

This data is made available under the Public Domain Dedication and License version v1.0 whose full text can be found at http://opendatacommons.org/licenses/pddl/ - See more at: http://opendatacommons.org/guide/#sthash.97PSVxmh.dpuf

Import into your tool

If you are using R here's how to get the data you want quickly loaded:

install.packages("jsonlite")
library("jsonlite")

json_file <- "http://datahub.io/core/unece-package-codes/datapackage.json"
json_data <- fromJSON(paste(readLines(json_file), collapse=""))

# access csv file by the index starting from 1
path_to_file = json_data$resources[[1]]$path
data <- read.csv(url(path_to_file))
print(data)

In order to work with Data Packages in Pandas you need to install the Frictionless Data data package library and the pandas extension:

pip install datapackage
pip install jsontableschema-pandas

To get the data run following code:

import datapackage

data_url = "http://datahub.io/core/unece-package-codes/datapackage.json"

# to load Data Package into storage
storage = datapackage.push_datapackage(data_url, 'pandas')

# data frames available (corresponding to data files in original dataset)
storage.buckets

# you can access datasets inside storage, e.g. the first one:
storage[storage.buckets[0]]

For Python, first install the `datapackage` library (all the datasets on DataHub are Data Packages):

pip install datapackage

To get Data Package into your Python environment, run following code:

from datapackage import Package

package = Package('http://datahub.io/core/unece-package-codes/datapackage.json')

# get list of resources:
resources = package.descriptor['resources']
resourceList = [resources[x]['name'] for x in range(0, len(resources))]
print(resourceList)

data = package.resources[0].read()
print(data)

If you are using JavaScript, please, follow instructions below:

Install data.js module using npm:

  $ npm install data.js

Once the package is installed, use the following code snippet:

const {Dataset} = require('data.js')

const path = 'http://datahub.io/core/unece-package-codes/datapackage.json'

// We're using self-invoking function here as we want to use async-await syntax:
(async () => {
  const dataset = await Dataset.load(path)

  // Get the first data file in this dataset
  const file = dataset.resources[0]
  // Get a raw stream
  const stream = await file.stream()
  // entire file as a buffer (be careful with large files!)
  const buffer = await file.buffer
})()

Install the datapackage library created specially for Ruby language using gem:

gem install datapackage

Now get the dataset and read the data:

require 'datapackage'

path = 'http://datahub.io/core/unece-package-codes/datapackage.json'

package = DataPackage::Package.new(path)
# So package variable contains metadata. You can see it:
puts package

# Read data itself:
resource = package.resources[0]
data = resource.read
puts data
Datapackage.json