resme 0.5.1 → 1.0.0

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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/lib/resme/cli/command_semantics.rb +23 -26
  3. data/lib/resme/version.rb +4 -1
  4. metadata +3 -43
  5. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Achievement.xsd +0 -91
  6. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Certificate.xsd +0 -62
  7. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/CommonTypes.xsd +0 -139
  8. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ComputerSkill.xsd +0 -112
  9. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ContactInformation.xsd +0 -321
  10. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Demographics.xsd +0 -122
  11. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DigitalContent.xsd +0 -164
  12. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DocumentInformation.xsd +0 -119
  13. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Documentation.xsd +0 -122
  14. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DrivingSkill.xsd +0 -71
  15. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EducationalExperience.xsd +0 -137
  16. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EmploymentExperience.xsd +0 -65
  17. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassCoverLetter.xsd +0 -70
  18. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassLearnerInformation.xsd +0 -91
  19. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassPrintingPreferences.xsd +0 -247
  20. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassSchema.xsd +0 -133
  21. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Experience.xsd +0 -75
  22. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Headline.xsd +0 -97
  23. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Identification.xsd +0 -54
  24. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Language.xsd +0 -107
  25. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Letter.xsd +0 -129
  26. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/LinguisticSkill.xsd +0 -189
  27. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/OccupationalField.xsd +0 -68
  28. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Organisation.xsd +0 -129
  29. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/PersonName.xsd +0 -71
  30. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Skill.xsd +0 -71
  31. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EQF_08_V1.0.0.xsd +0 -115
  32. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EUDrivingLicence_V1.1.0.xsd +0 -28
  33. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/ISCED97_V1.0.0.xsd +0 -981
  34. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/NACE_COM_V1.0.0.xsd +0 -5630
  35. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassAddressFormats_V1.3.0.xsd +0 -117
  36. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISCO_88_COM_V1.4.0.xsd +0 -15116
  37. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOCountries_V1.6.0.xsd +0 -6180
  38. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOLanguages_V1.8.0.xsd +0 -7645
  39. data/lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassNationalities_V1.6.0.xsd +0 -6179
  40. data/lib/resme/templates/europass/europass-xml-schema-doc-v3.3.0.pdf +0 -0
  41. data/lib/resme/templates/resume.xml.erb +0 -496
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de3845cee948da0b1588b074a720662d5ea22a8c1cb1176aad2fa09f6f7cab3f
4
- data.tar.gz: 83ae22f7d7731406fdd3940e97c9e39c9a61b07336e95f2efc369cae719687f9
3
+ metadata.gz: 66f3a4918e997473187573c54c2b20296068013f716dd7892eaa76e1ba817cbb
4
+ data.tar.gz: 75355b94617c3ff3f4f5ee60caa82d59208b9179eb5af018041eec222e7d9442
5
5
  SHA512:
6
- metadata.gz: 32d94c5d909f54888d2a8fa184aaa05f8a9d8075d6f3f19ff6654bf23e58f82e54e96d84ea08de148548ed0260396c6d9790b6dbc0e3992c295157b5713bb952
7
- data.tar.gz: 41386481b15b5b14ba86efbd23b29331341b22f91ebcc70497d8293609414a15e8c06518ad441e0cd26f78b552a47e7d125c42bc495f17def2bbd16314fe52b5
6
+ metadata.gz: 4e2ff1e179c492a07a140c1027a320131da9de9018d135ac3517c25b686e3d2a68d48d9157789e536e0f4bd965b7515494762290cd82cf49a5ecea0fd6f00222
7
+ data.tar.gz: 7db312c08533de4e73ce8a630c9eb3a3256ebb386312e5c142bec59a333c2263db25e9802ae960c57e19f8274676bc52232b4436e3697d12a119de788acbfffa
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "resme/version"
2
4
  require "readline"
3
5
  require "fileutils"
@@ -7,6 +9,7 @@ require "erb"
7
9
  require "json"
8
10
 
9
11
  module Resme
12
+ # Give e meaning to commands
10
13
  module CommandSemantics
11
14
  APPNAME = "resme"
12
15
  VERSION = Resme::VERSION
@@ -26,33 +29,33 @@ module Resme
26
29
 
27
30
  def self.help(opts = nil, argv = [])
28
31
  all_commands = CommandSyntax.commands
29
-
30
- if argv != []
31
- argv.map do |x|
32
- puts all_commands[x.to_sym][:help]
33
- puts "\n\n"
34
- end
35
- else
32
+
33
+ if argv == []
36
34
  puts "#{APPNAME} command [options] [args]\n"
37
35
  puts "Available commands:\n"
38
36
  all_commands.each_key do |key|
39
37
  puts " #{all_commands[key][:options].banner}"
40
38
  end
39
+ else
40
+ argv.map do |x|
41
+ puts all_commands[x.to_sym][:help]
42
+ puts "\n\n"
43
+ end
41
44
  end
42
45
  end
43
46
 
44
- def self.console(opts, argv = [])
47
+ def self.console(opts = nil, argv = [])
45
48
  all_commands = CommandSyntax.commands
46
49
  all_commands.delete(:console)
47
-
50
+
48
51
  i = 0
49
- while true
52
+ loop do
50
53
  string = Readline.readline("#{APPNAME}:%03d> " % i, true)
51
54
  # as a courtesy, remove any leading appname string
52
55
  string.gsub!(/^#{APPNAME} /, "")
53
56
  exit 0 if %w[exit quit .].include? string
54
57
  execute all_commands, string.split(" ")
55
- i = i + 1
58
+ i += 1
56
59
  end
57
60
  end
58
61
 
@@ -141,13 +144,13 @@ module Resme
141
144
  end
142
145
 
143
146
  def self.view(opts, argv)
144
- format = opts[:template] == "europass" ? "xml" : opts[:template]
147
+ format = opts[:to]
145
148
  template = File.join(File.dirname(__FILE__), "/../templates/resume.#{format}.erb")
146
149
  puts File.read template
147
150
  end
148
151
 
149
152
  def self.generate(opts, argv)
150
- format = opts[:to] == "europass" ? "xml" : opts[:to]
153
+ format = opts[:to]
151
154
  output = opts[:output] || "resume-#{Date.today}.#{format}"
152
155
 
153
156
  if opts[:erb]
@@ -158,42 +161,36 @@ module Resme
158
161
 
159
162
  skipped_sections = opts[:skip] || []
160
163
 
161
- if !File.exists?(template)
164
+ if !File.exist?(template)
162
165
  puts "#{APPNAME} error: format #{format} is not understood."
163
166
  end
164
167
 
165
168
  render argv, template, output, skipped_sections
166
169
  puts "Resume generated in #{output}"
167
-
168
- if format == "xml" then
169
- puts "Europass XML generated. Render via, e.g., http://interop.europass.cedefop.europa.eu/web-services/remote-upload/"
170
- end
171
170
  end
172
171
 
173
- private
174
-
175
- def self.render(yml_files, template_name, output_name, skipped_sections)
172
+ private_class_method def self.render(yml_files, template_name, output_name, skipped_sections)
176
173
  data = {}
177
174
  yml_files.each do |file|
178
175
  data = data.merge(YAML.load_file(file, permitted_classes: [Date]))
179
176
  end
180
177
  skipped_sections.each do |section|
181
- data.reject! { |k| k == section }
178
+ data.reject! { |k| k == section }
182
179
  end
183
180
  template = File.read(template_name)
184
181
  output = ERB.new(template, trim_mode: "-").result(binding)
185
- # it is difficult to write readable ERBs with no empty lines...
186
- # we use gsub to replace multiple empty lines with \n\n in the final output
182
+ # it is difficult to write readable ERBs with no empty lines... we use
183
+ # gsub to replace multiple empty lines with \n\n in the final output
187
184
  output.gsub!(/([\t ]*\n){3,}/, "\n\n")
188
185
  backup_and_write output_name, output
189
186
  end
190
187
 
191
- def self.backup(filename)
188
+ private_class_method def self.backup(filename)
192
189
  FileUtils::cp filename, filename + "~"
193
190
  puts "Backup copy #{filename} created in #{filename}~."
194
191
  end
195
192
 
196
- def self.backup_and_write(filename, content)
193
+ private_class_method def self.backup_and_write(filename, content)
197
194
  backup(filename) if File.exist?(filename)
198
195
  File.open(filename, "w") { |f| f.puts content }
199
196
  end
data/lib/resme/version.rb CHANGED
@@ -1,3 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Version number
1
4
  module Resme
2
- VERSION = "0.5.1"
5
+ VERSION = "1.0.0"
3
6
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adolfo Villafiorita
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2023-05-31 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: classy_hash
@@ -77,46 +76,9 @@ files:
77
76
  - lib/resme/cli/command_syntax.rb
78
77
  - lib/resme/cli/resume_structure_validator.rb
79
78
  - lib/resme/renderer/renderer.rb
80
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Achievement.xsd
81
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Certificate.xsd
82
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/CommonTypes.xsd
83
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ComputerSkill.xsd
84
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/ContactInformation.xsd
85
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Demographics.xsd
86
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DigitalContent.xsd
87
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DocumentInformation.xsd
88
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Documentation.xsd
89
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/DrivingSkill.xsd
90
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EducationalExperience.xsd
91
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EmploymentExperience.xsd
92
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassCoverLetter.xsd
93
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassLearnerInformation.xsd
94
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassPrintingPreferences.xsd
95
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/EuropassSchema.xsd
96
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Experience.xsd
97
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Headline.xsd
98
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Identification.xsd
99
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Language.xsd
100
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Letter.xsd
101
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/LinguisticSkill.xsd
102
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/OccupationalField.xsd
103
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Organisation.xsd
104
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/PersonName.xsd
105
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/Skill.xsd
106
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EQF_08_V1.0.0.xsd
107
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/EUDrivingLicence_V1.1.0.xsd
108
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/ISCED97_V1.0.0.xsd
109
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/imported/NACE_COM_V1.0.0.xsd
110
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassAddressFormats_V1.3.0.xsd
111
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISCO_88_COM_V1.4.0.xsd
112
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOCountries_V1.6.0.xsd
113
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassISOLanguages_V1.8.0.xsd
114
- - lib/resme/templates/europass/europass-xml-schema-definition-v3.3.0/included/EuropassNationalities_V1.6.0.xsd
115
- - lib/resme/templates/europass/europass-xml-schema-doc-v3.3.0.pdf
116
79
  - lib/resme/templates/resume.json.erb
117
80
  - lib/resme/templates/resume.md.erb
118
81
  - lib/resme/templates/resume.org.erb
119
- - lib/resme/templates/resume.xml.erb
120
82
  - lib/resme/templates/resume.yml
121
83
  - lib/resme/version.rb
122
84
  - resme.gemspec
@@ -128,7 +90,6 @@ metadata:
128
90
  homepage_uri: http://github.io/avillafiorita/resme
129
91
  source_code_uri: https://github.com/avillafiorita/resme
130
92
  changelog_uri: https://github.com/avillafiorita/resme/CHANGELOG.org
131
- post_install_message:
132
93
  rdoc_options: []
133
94
  require_paths:
134
95
  - lib
@@ -143,8 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
104
  - !ruby/object:Gem::Version
144
105
  version: '0'
145
106
  requirements: []
146
- rubygems_version: 3.3.26
147
- signing_key:
107
+ rubygems_version: 3.6.7
148
108
  specification_version: 4
149
109
  summary: Write a resume in YML and export to various formats, including json and europass
150
110
  XML.
@@ -1,91 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <xsd:schema
3
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
4
- xmlns="http://europass.cedefop.europa.eu/Europass"
5
- targetNamespace="http://europass.cedefop.europa.eu/Europass"
6
- elementFormDefault="qualified">
7
-
8
- <!--
9
- /*
10
- * Copyright European Union 2002-2014
11
- *
12
- *
13
- * Licensed under the EUPL, Version 1.1 or – as soon they
14
- * will be approved by the European Commission - subsequent
15
- * versions of the EUPL (the "Licence");
16
- * You may not use this work except in compliance with the
17
- * Licence.
18
- * You may obtain a copy of the Licence at:
19
- *
20
- * http://ec.europa.eu/idabc/eupl.html
21
- *
22
- *
23
- * Unless required by applicable law or agreed to in
24
- * writing, software distributed under the Licence is
25
- * distributed on an "AS IS" basis,
26
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
27
- * express or implied.
28
- * See the Licence for the specific language governing
29
- * permissions and limitations under the Licence.
30
- *
31
- */
32
- -->
33
- <xsd:include schemaLocation="CommonTypes.xsd"/>
34
-
35
- <xsd:include schemaLocation="Documentation.xsd"/>
36
-
37
-
38
- <!-- ACHIEVEMENTS -->
39
- <xsd:complexType name="AchievementType">
40
- <xsd:annotation>
41
- <xsd:documentation xml:lang="en">Generic type to define an Achievement.</xsd:documentation>
42
- </xsd:annotation>
43
- <xsd:sequence>
44
- <xsd:element name="Title" type="AchievementTypeLabelType" minOccurs="0"/>
45
- <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
46
- <xsd:element name="Documentation" minOccurs="0" type="IntraDocumentDocumentationType"/>
47
- </xsd:sequence>
48
- </xsd:complexType>
49
-
50
- <xsd:complexType name="AchievementListType">
51
- <xsd:annotation>
52
- <xsd:documentation xml:lang="en">
53
- Contains a list of additional information about the various achievements of an individual, such as participation to conferences, workshops, memberships to organisations, list of publications, etc.
54
- </xsd:documentation>
55
- </xsd:annotation>
56
- <xsd:sequence>
57
- <xsd:element name="Achievement" type="AchievementType" minOccurs="0" maxOccurs="unbounded"/>
58
- </xsd:sequence>
59
- </xsd:complexType>
60
-
61
- <!-- Achievement Types -->
62
- <xsd:complexType name="AchievementTypeLabelType">
63
- <xsd:complexContent>
64
- <xsd:restriction base="LabelType">
65
- <xsd:sequence>
66
- <xsd:element name="Code" minOccurs="0" type="AchievementTypesEnumeration"/>
67
- <xsd:element name="Label" type="xsd:string" minOccurs="0"/>
68
- </xsd:sequence>
69
- </xsd:restriction>
70
- </xsd:complexContent>
71
- </xsd:complexType>
72
- <xsd:simpleType name="AchievementTypesEnumeration">
73
- <xsd:restriction base="xsd:string">
74
- <xsd:enumeration value="honors_awards"/>
75
- <xsd:enumeration value="presentations"/>
76
- <xsd:enumeration value="publications"/>
77
- <xsd:enumeration value="projects"/>
78
- <xsd:enumeration value="citations"/>
79
- <xsd:enumeration value="memberships"/>
80
- <xsd:enumeration value="conferences"/>
81
- <xsd:enumeration value="seminars"/>
82
- <xsd:enumeration value="workshops"/>
83
- <xsd:enumeration value="references"/>
84
- <xsd:enumeration value="signature_equivalent"/>
85
- <xsd:enumeration value="courses"/>
86
- <xsd:enumeration value="certifications"/>
87
- </xsd:restriction>
88
- </xsd:simpleType>
89
-
90
-
91
- </xsd:schema>
@@ -1,62 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <xsd:schema
3
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
4
- xmlns="http://europass.cedefop.europa.eu/Europass"
5
- targetNamespace="http://europass.cedefop.europa.eu/Europass"
6
- elementFormDefault="qualified">
7
-
8
- <!--
9
- /*
10
- * Copyright European Union 2002-2014
11
- *
12
- *
13
- * Licensed under the EUPL, Version 1.1 or – as soon they
14
- * will be approved by the European Commission - subsequent
15
- * versions of the EUPL (the "Licence");
16
- * You may not use this work except in compliance with the
17
- * Licence.
18
- * You may obtain a copy of the Licence at:
19
- *
20
- * http://ec.europa.eu/idabc/eupl.html
21
- *
22
- *
23
- * Unless required by applicable law or agreed to in
24
- * writing, software distributed under the Licence is
25
- * distributed on an "AS IS" basis,
26
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
27
- * express or implied.
28
- * See the Licence for the specific language governing
29
- * permissions and limitations under the Licence.
30
- *
31
- */
32
- -->
33
-
34
- <xsd:include schemaLocation="./CommonTypes.xsd"/>
35
-
36
- <!-- Certificates -->
37
- <xsd:complexType name="CertificateListType">
38
- <xsd:annotation>
39
- <xsd:documentation xml:lang="en">
40
- Defines a list of Certificates.
41
- </xsd:documentation>
42
- </xsd:annotation>
43
- <xsd:sequence>
44
- <xsd:element name="Certificate" type="CertificateType" minOccurs="0" maxOccurs="unbounded"/>
45
- </xsd:sequence>
46
- </xsd:complexType>
47
-
48
- <xsd:complexType name="CertificateType">
49
- <xsd:annotation>
50
- <xsd:documentation xml:lang="en">
51
- Defines a generic type for a Certificate. A Certificate contains information about the title name, the awarding body and the date of awarding. It also contains information about the level that corresponds to this diploma.
52
- </xsd:documentation>
53
- </xsd:annotation>
54
- <xsd:sequence>
55
- <xsd:element name="Title" type="xsd:string" minOccurs="0"/>
56
- <xsd:element name="AwardingBody" type="xsd:string" minOccurs="0"/>
57
- <xsd:element name="Date" type="DateType" minOccurs="0"/>
58
- <xsd:element name="Level" type="xsd:anyType" minOccurs="0"/>
59
- </xsd:sequence>
60
- </xsd:complexType>
61
-
62
- </xsd:schema>
@@ -1,139 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <xsd:schema
3
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
4
- xmlns="http://europass.cedefop.europa.eu/Europass"
5
- targetNamespace="http://europass.cedefop.europa.eu/Europass"
6
- elementFormDefault="qualified">
7
-
8
- <!--
9
- /*
10
- * Copyright European Union 2002-2014
11
- *
12
- *
13
- * Licensed under the EUPL, Version 1.1 or – as soon they
14
- * will be approved by the European Commission - subsequent
15
- * versions of the EUPL (the "Licence");
16
- * You may not use this work except in compliance with the
17
- * Licence.
18
- * You may obtain a copy of the Licence at:
19
- *
20
- * http://ec.europa.eu/idabc/eupl.html
21
- *
22
- *
23
- * Unless required by applicable law or agreed to in
24
- * writing, software distributed under the Licence is
25
- * distributed on an "AS IS" basis,
26
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
27
- * express or implied.
28
- * See the Licence for the specific language governing
29
- * permissions and limitations under the Licence.
30
- *
31
- */
32
- -->
33
- <!-- Europass Documents -->
34
- <xsd:simpleType name="DocumentTypeType">
35
- <xsd:annotation>
36
- <xsd:documentation xml:lang="en">
37
- Enumeration of values that describe the Europass Documents that can be represented as XML instances that follow this specific XML Schema Definition.
38
- </xsd:documentation>
39
- </xsd:annotation>
40
- <xsd:restriction base="xsd:string">
41
- <xsd:enumeration value="ECV_ESP"/>
42
- <xsd:enumeration value="ESP"/>
43
- <xsd:enumeration value="ECV"/>
44
- <xsd:enumeration value="ELP"/>
45
- <xsd:enumeration value="ECL"/>
46
- <xsd:enumeration value="EX"/>
47
- </xsd:restriction>
48
- </xsd:simpleType>
49
-
50
- <xsd:complexType name="DocumentListType">
51
- <xsd:annotation>
52
- <xsd:documentation xml:lang="en">
53
- Contains an list of documents.
54
- </xsd:documentation>
55
- </xsd:annotation>
56
- <xsd:sequence>
57
- <xsd:element name="Document" type="DocumentTypeType" minOccurs="0" maxOccurs="unbounded"/>
58
- </xsd:sequence>
59
- </xsd:complexType>
60
-
61
- <!-- Locale -->
62
- <xsd:simpleType name="LocaleType">
63
- <xsd:annotation>
64
- <xsd:documentation xml:lang="en">
65
- The locale is comprised of two lowercase and two uppercase letters, separated by underscore. E.g. de_DE or sv_SE.
66
- </xsd:documentation>
67
- </xsd:annotation>
68
- <xsd:restriction base="xsd:string">
69
- <xsd:pattern value="[a-z]{2}(_[A-Z]{2})*"/>
70
- </xsd:restriction>
71
- </xsd:simpleType>
72
-
73
- <!-- Code/Label Elements -->
74
- <xsd:complexType name="LabelType">
75
- <xsd:sequence>
76
- <xsd:element name="Code" type="xsd:string" minOccurs="0"/>
77
- <xsd:element name="Label" type="xsd:string" minOccurs="0"/>
78
- </xsd:sequence>
79
- </xsd:complexType>
80
-
81
-
82
- <!-- Dates and Period -->
83
- <xsd:complexType name="PeriodType">
84
- <xsd:annotation>
85
- <xsd:documentation xml:lang="en">
86
- A period is comprised of three sub elements for the start and end dates of the period, as well as an idicator whether the specific period is current.
87
- The end date and the current indicator are optional.
88
- </xsd:documentation>
89
- </xsd:annotation>
90
- <xsd:sequence>
91
- <xsd:element name="From" type="DateType"/>
92
- <xsd:element name="To" type="DateType" minOccurs="0"/>
93
- <xsd:element name="Current" type="xsd:boolean" minOccurs="0">
94
- <xsd:annotation>
95
- <xsd:documentation xml:lang="en">Boolean that indicates that the experience spans until today</xsd:documentation>
96
- </xsd:annotation>
97
- </xsd:element>
98
- <xsd:element name="Duration" type="xsd:duration" minOccurs="0">
99
- <xsd:annotation>
100
- <xsd:documentation xml:lang="en">Describes the duration that corresponds to the start and end dates of this period</xsd:documentation>
101
- </xsd:annotation>
102
- </xsd:element>
103
- <xsd:element name="DurationEquivalent" type="xsd:string" minOccurs="0">
104
- <xsd:annotation>
105
- <xsd:documentation xml:lang="en">Describes the duration that is equivalent to the start and end dates of this period (may not be accurate correspondence)</xsd:documentation>
106
- </xsd:annotation>
107
- </xsd:element>
108
- </xsd:sequence>
109
- </xsd:complexType>
110
-
111
- <xsd:complexType name="DateType">
112
- <xsd:annotation>
113
- <xsd:documentation xml:lang="en">
114
- Defines date information, which consists of day, month and year.The date must include at least the year attribute.
115
- </xsd:documentation>
116
- </xsd:annotation>
117
- <xsd:complexContent>
118
- <xsd:restriction base="xsd:anyType">
119
- <xsd:attribute name="day" type="xsd:gDay" use="optional"/>
120
- <xsd:attribute name="month" type="xsd:gMonth" use="optional"/>
121
- <xsd:attribute name="year" type="xsd:gYear" use="required"/>
122
- </xsd:restriction>
123
- </xsd:complexContent>
124
- </xsd:complexType>
125
-
126
-
127
- <xsd:simpleType name="CEFLanguageLevelType">
128
- <xsd:annotation>
129
- <xsd:documentation xml:lang="en">
130
- The CEF language level is comprised of one letter (either A, B or C) and one digit (either 1 or 2). E.g. A1, B2, C1. The levels are defined by the Common European Framework of Reference for Languages (CEFR)
131
- </xsd:documentation>
132
- </xsd:annotation>
133
- <xsd:restriction base="xsd:string">
134
- <xsd:pattern value="([A-C][12])?"/>
135
- </xsd:restriction>
136
- </xsd:simpleType>
137
-
138
-
139
- </xsd:schema>
@@ -1,112 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <xsd:schema
3
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
4
- xmlns="http://europass.cedefop.europa.eu/Europass"
5
- targetNamespace="http://europass.cedefop.europa.eu/Europass"
6
- elementFormDefault="qualified">
7
-
8
- <!--
9
- /*
10
- * Copyright European Union 2002-2014
11
- *
12
- *
13
- * Licensed under the EUPL, Version 1.1 or – as soon they
14
- * will be approved by the European Commission - subsequent
15
- * versions of the EUPL (the "Licence");
16
- * You may not use this work except in compliance with the
17
- * Licence.
18
- * You may obtain a copy of the Licence at:
19
- *
20
- * http://ec.europa.eu/idabc/eupl.html
21
- *
22
- *
23
- * Unless required by applicable law or agreed to in
24
- * writing, software distributed under the Licence is
25
- * distributed on an "AS IS" basis,
26
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
27
- * express or implied.
28
- * See the Licence for the specific language governing
29
- * permissions and limitations under the Licence.
30
- *
31
- */
32
- -->
33
- <xsd:include schemaLocation="CommonTypes.xsd"/>
34
- <xsd:include schemaLocation="Certificate.xsd"/>
35
- <xsd:include schemaLocation="Documentation.xsd"/>
36
- <xsd:include schemaLocation="Skill.xsd"/>
37
-
38
-
39
- <xsd:complexType name="ComputerSkillType">
40
- <xsd:annotation>
41
- <xsd:documentation xml:lang="en">
42
- Defines a computer skill, which is modelled with one unstructured (free text) Description element,
43
- and it may provide additional information about proficiency level, and verification organization.
44
- It may also accept Documentation information (reference document).
45
- </xsd:documentation>
46
- </xsd:annotation>
47
- <xsd:complexContent>
48
- <xsd:restriction base="SkillType">
49
- <xsd:sequence>
50
- <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
51
- <xsd:element name="ProficiencyLevel" type="ComputerLevelType" minOccurs="0"/>
52
- <xsd:element name="VerifiedBy" type="ComputerCertificateListType" minOccurs="0"/>
53
- <xsd:element name="Documentation" type="IntraDocumentDocumentationType" minOccurs="0"/>
54
- </xsd:sequence>
55
- </xsd:restriction>
56
- </xsd:complexContent>
57
- </xsd:complexType>
58
-
59
- <xsd:complexType name="ComputerLevelType">
60
- <xsd:complexContent>
61
- <xsd:restriction base="xsd:anyType">
62
- <xsd:sequence>
63
- <xsd:element name="Information" type="ICTLevelType" minOccurs="0"/>
64
- <xsd:element name="Communication" type="ICTLevelType" minOccurs="0"/>
65
- <xsd:element name="ContentCreation" type="ICTLevelType" minOccurs="0"/>
66
- <xsd:element name="Safety" type="ICTLevelType" minOccurs="0"/>
67
- <xsd:element name="ProblemSolving" type="ICTLevelType" minOccurs="0"/>
68
- </xsd:sequence>
69
- </xsd:restriction>
70
- </xsd:complexContent>
71
- </xsd:complexType>
72
-
73
- <xsd:simpleType name="ICTLevelType">
74
- <xsd:annotation>
75
- <xsd:documentation xml:lang="en">
76
- The ICT Skill level is comprised of Basic, Independent or Proficient User
77
- </xsd:documentation>
78
- </xsd:annotation>
79
- <xsd:restriction base="xsd:string">
80
- <!--<xsd:pattern value="([A-C][12])?"/> -->
81
- <xsd:enumeration value="A"/><!-- Basic User -->
82
- <xsd:enumeration value="B"/><!-- Independent User -->
83
- <xsd:enumeration value="C"/><!-- Proficient User -->
84
- </xsd:restriction>
85
- </xsd:simpleType>
86
-
87
- <xsd:complexType name="ComputerCertificateListType">
88
- <xsd:complexContent>
89
- <xsd:restriction base="CertificateListType">
90
- <xsd:sequence>
91
- <xsd:element name="Certificate" type="ComputerCertificateType" minOccurs="0" maxOccurs="unbounded"/>
92
- </xsd:sequence>
93
- </xsd:restriction>
94
- </xsd:complexContent>
95
- </xsd:complexType>
96
-
97
- <xsd:complexType name="ComputerCertificateType">
98
- <xsd:annotation>
99
- <xsd:documentation xml:lang="en">
100
- Defines a Computer Certificate by restricting elements allowing only title
101
- </xsd:documentation>
102
- </xsd:annotation>
103
- <xsd:complexContent>
104
- <xsd:restriction base="CertificateType">
105
- <xsd:sequence>
106
- <xsd:element name="Title" type="xsd:string" minOccurs="0"/>
107
- </xsd:sequence>
108
- </xsd:restriction>
109
- </xsd:complexContent>
110
- </xsd:complexType>
111
-
112
- </xsd:schema>