adiwg-mdcodes 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +3 -0
- data/Gruntfile.js +32 -0
- data/README.md +28 -6
- data/adiwg-mdcodes.gemspec +2 -0
- data/lib/adiwg/mdcodes.rb +29 -9
- data/lib/adiwg/mdcodes/version.rb +2 -1
- data/package.json +25 -0
- data/resources/mdcodes.yml +1 -2
- metadata +18 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27148550d8503791cdf58ffb8cd0e012a1a23fb7
|
4
|
+
data.tar.gz: 9ce920947a7ec0284261dab3815a6bd4176a06f1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ab38525674af2337f43c43064460c2c07079a02cc032b4a90aff8d570946f367d7040ff5d9492a4f5ea9b352e9ba863d28ebab7b564d504f4a8424bd81c17efb
|
7
|
+
data.tar.gz: fc87fdc70f80994986fd2e8afb8089dfd9c818007bda3b7e2a504ea87c8fb28c48d5691c203b2ff3d0be2b8e5f49a9a72c0b88288c5ebdc7372d9e494dad5306
|
data/.gitignore
CHANGED
data/Gruntfile.js
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
module.exports = function(grunt) {
|
2
|
+
|
3
|
+
// Project configuration.
|
4
|
+
grunt.initConfig({
|
5
|
+
// This line makes your node configurations available for use
|
6
|
+
pkg: grunt.file.readJSON('package.json'),
|
7
|
+
convert: {
|
8
|
+
yml2json: {
|
9
|
+
files: [{
|
10
|
+
expand: true,
|
11
|
+
cwd: 'resources/',
|
12
|
+
src: ['**/*.yml'],
|
13
|
+
dest: 'resources/json/',
|
14
|
+
ext: '.json'
|
15
|
+
}]
|
16
|
+
}
|
17
|
+
},
|
18
|
+
|
19
|
+
yamllint: {
|
20
|
+
all: ['resources/**/*.yaml']
|
21
|
+
}
|
22
|
+
});
|
23
|
+
// Each plugin must be loaded following this pattern
|
24
|
+
grunt.loadNpmTasks('grunt-convert');
|
25
|
+
grunt.loadNpmTasks('grunt-yamllint');
|
26
|
+
// Custom task(s).
|
27
|
+
// First argument names the task for use in command line
|
28
|
+
// Second argument is a list of tasks to be run
|
29
|
+
grunt.registerTask('default', ['yamllint:all', 'convert:yml2json']);
|
30
|
+
grunt.registerTask('lint', ['yamllint:all']);
|
31
|
+
|
32
|
+
};
|
data/README.md
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
[](https://travis-ci.org/adiwg/mdCodes)
|
2
|
+
[](http://badge.fury.io/rb/adiwg-mdcodes)
|
2
3
|
|
3
4
|
# Mdcodes
|
4
5
|
|
5
|
-
adiwg-mdcodes provides code lists in JSON formats for loading of mdEditor
|
6
|
-
|
7
|
-
|
6
|
+
adiwg-mdcodes provides code lists in hash or JSON formats for loading of mdEditor and other metadata
|
7
|
+
tools that use the adiwg-json-schema. The code lists include all ISO 19115-2 and ISO 19115-1 codes plus
|
8
|
+
supplemental codes added NGDC and ADIwg.
|
8
9
|
|
9
10
|
## Installation
|
10
11
|
|
@@ -20,13 +21,34 @@ Or install it yourself as:
|
|
20
21
|
|
21
22
|
$ gem install adiwg-mdcodes
|
22
23
|
|
23
|
-
## Usage
|
24
24
|
|
25
|
-
|
25
|
+
## Methods
|
26
|
+
|
27
|
+
### getYamlPath
|
28
|
+
> returns the path to the YAML file of code lists.
|
29
|
+
|
30
|
+
### getCodeLists( returnFormat )
|
31
|
+
> returns all code lists with all code list data
|
32
|
+
> returnFormat = \[__hash__ | json] (string)
|
33
|
+
|
34
|
+
### getCodeList( codeListName, returnFormat )
|
35
|
+
> returns a single code list with all code list data
|
36
|
+
> codeListName = name of code list to return (string)
|
37
|
+
> returnFormat = \[ __hash__ | json ] (string)
|
38
|
+
|
39
|
+
### getCodeNames( returnFormat )
|
40
|
+
> returns all code lists with only the code list item names
|
41
|
+
> returnFormat = \[__hash__ | json] (string)
|
42
|
+
|
43
|
+
### getCodeName( codeListName, returnFormat )
|
44
|
+
> returns a single code list with only the code list item names
|
45
|
+
> codeListName = name of code list to return (string)
|
46
|
+
> returnFormat = \[__hash__ | json] (string)
|
47
|
+
|
26
48
|
|
27
49
|
## Contributing
|
28
50
|
|
29
|
-
1. Fork it (
|
51
|
+
1. Fork it (https://github.com/adiwg/mdCodes/fork)
|
30
52
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
31
53
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
32
54
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/adiwg-mdcodes.gemspec
CHANGED
data/lib/adiwg/mdcodes.rb
CHANGED
@@ -6,10 +6,13 @@
|
|
6
6
|
# Stan Smith 2014-11-07 original script
|
7
7
|
# Stan Smith 2014-11-07 add methods to return only codeNames
|
8
8
|
# Josh Bradley 2014-11-07 moved resources directory outside lib, add getYamlPath
|
9
|
+
# Stan Smith 2014-11-10 added support for JSON returns
|
10
|
+
# Stan Smith 2014-11-10 added README.md text
|
9
11
|
|
10
12
|
# add main directories to load_path
|
11
13
|
|
12
14
|
require 'yaml'
|
15
|
+
require 'json'
|
13
16
|
|
14
17
|
module ADIWG
|
15
18
|
|
@@ -20,21 +23,30 @@ module ADIWG
|
|
20
23
|
end
|
21
24
|
|
22
25
|
# read the yml file into ruby
|
23
|
-
def self.getCodeLists
|
26
|
+
def self.getCodeLists(format='hash')
|
24
27
|
file = getYamlPath
|
25
|
-
|
28
|
+
codes = YAML.load_file(file)
|
29
|
+
if format == 'json'
|
30
|
+
return codes.to_json
|
31
|
+
else
|
32
|
+
return codes
|
33
|
+
end
|
26
34
|
end
|
27
35
|
|
28
36
|
# return a single code list
|
29
|
-
def self.getCodeList(codeList)
|
37
|
+
def self.getCodeList(codeList, format='hash')
|
30
38
|
codeLists = getCodeLists
|
31
39
|
hCodeList = {}
|
32
40
|
hCodeList[codeList] = codeLists[codeList]
|
33
|
-
|
41
|
+
if format == 'json'
|
42
|
+
return hCodeList.to_json
|
43
|
+
else
|
44
|
+
return hCodeList
|
45
|
+
end
|
34
46
|
end
|
35
47
|
|
36
48
|
# return only code names
|
37
|
-
def self.getCodeNames
|
49
|
+
def self.getCodeNames(format='hash')
|
38
50
|
codeLists = getCodeLists
|
39
51
|
hCodeNames = {}
|
40
52
|
codeLists.each do |key, value|
|
@@ -44,12 +56,16 @@ module ADIWG
|
|
44
56
|
aList << item['codeName']
|
45
57
|
end
|
46
58
|
hCodeNames[key] = aList
|
47
|
-
|
48
|
-
|
59
|
+
end
|
60
|
+
if format == 'json'
|
61
|
+
return hCodeNames.to_json
|
62
|
+
else
|
63
|
+
return hCodeNames
|
64
|
+
end
|
49
65
|
end
|
50
66
|
|
51
67
|
# return a single code name list
|
52
|
-
def self.getCodeName(codeList)
|
68
|
+
def self.getCodeName(codeList, format='hash')
|
53
69
|
hCodeList = getCodeList(codeList)
|
54
70
|
hCodeNames = {}
|
55
71
|
aItems = hCodeList[codeList]['items']
|
@@ -58,7 +74,11 @@ module ADIWG
|
|
58
74
|
aList << item['codeName']
|
59
75
|
end
|
60
76
|
hCodeNames[codeList] = aList
|
61
|
-
|
77
|
+
if format == 'json'
|
78
|
+
return hCodeNames.to_json
|
79
|
+
else
|
80
|
+
return hCodeNames
|
81
|
+
end
|
62
82
|
end
|
63
83
|
|
64
84
|
end
|
@@ -6,11 +6,12 @@
|
|
6
6
|
# 0.1.1 2014-11-06 added factSheet to scope
|
7
7
|
# 0.2.0 2014-11-07 add option to return only codeNames
|
8
8
|
# ... moved resources directory outside of lib
|
9
|
+
# 0.2.1 2014-11-10 added support for JSON returns
|
9
10
|
|
10
11
|
module ADIWG
|
11
12
|
|
12
13
|
module Mdcodes
|
13
|
-
VERSION = "0.2.
|
14
|
+
VERSION = "0.2.1"
|
14
15
|
end
|
15
16
|
|
16
17
|
end
|
data/package.json
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
{
|
2
|
+
"name": "mdCodes",
|
3
|
+
"version": "0.2.1",
|
4
|
+
"description": "CodeLists for ADIwg mdJSON",
|
5
|
+
"repository": {
|
6
|
+
"type": "git",
|
7
|
+
"url": "https://github.com/adiwg/mdCodes.git"
|
8
|
+
},
|
9
|
+
"keywords": [
|
10
|
+
"metadata",
|
11
|
+
"adiwg",
|
12
|
+
"json"
|
13
|
+
],
|
14
|
+
"author": "https://github.com/stansmith907, https://github.com/jlblcc",
|
15
|
+
"license": "UNLICENSE",
|
16
|
+
"bugs": {
|
17
|
+
"url": "https://github.com/adiwg/mdCodes/issues"
|
18
|
+
},
|
19
|
+
"homepage": "https://github.com/adiwg/mdCodes",
|
20
|
+
"devDependencies": {
|
21
|
+
"grunt": "^0.4.5",
|
22
|
+
"grunt-convert": "^0.1.11",
|
23
|
+
"grunt-yamllint": "^0.2.0"
|
24
|
+
}
|
25
|
+
}
|
data/resources/mdcodes.yml
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adiwg-mdcodes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- stansmith907
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-11-
|
11
|
+
date: 2014-11-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '5'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: json
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.8'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '1.8'
|
55
69
|
description: adiwg-mdcodes provides code lists for use in ISO 19139 compliant metadata,
|
56
70
|
especially mdJSON. The codes include all ISO 19115-2 and ISO 19115-1 codes plus
|
57
71
|
additional codes from NGDC and ADIwg.
|
@@ -64,6 +78,7 @@ files:
|
|
64
78
|
- .gitignore
|
65
79
|
- .travis.yml
|
66
80
|
- Gemfile
|
81
|
+
- Gruntfile.js
|
67
82
|
- LICENSE.txt
|
68
83
|
- README.md
|
69
84
|
- Rakefile
|
@@ -71,6 +86,7 @@ files:
|
|
71
86
|
- lib/adiwg-mdcodes.rb
|
72
87
|
- lib/adiwg/mdcodes.rb
|
73
88
|
- lib/adiwg/mdcodes/version.rb
|
89
|
+
- package.json
|
74
90
|
- resources/mdcodes.yml
|
75
91
|
- test/dev.rb
|
76
92
|
- test/tc_mdcodes.rb
|
@@ -101,4 +117,3 @@ summary: adiwg-mdcodes provides code lists for mdJSON.
|
|
101
117
|
test_files:
|
102
118
|
- test/dev.rb
|
103
119
|
- test/tc_mdcodes.rb
|
104
|
-
has_rdoc:
|