schema-resume-validator 1.2.0 → 1.3.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.
- checksums.yaml +4 -4
- data/schemas/context.jsonld +5 -0
- data/schemas/meta-schema.json +2 -3
- data/schemas/schema-resume.xsd +21 -3
- data/schemas/schema.json +36 -51
- metadata +10 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4d785a0e550c5e5eb9d7ab2bbb6e7d0977dfab6dcee108d6b934f2e0de3754b2
|
|
4
|
+
data.tar.gz: c5b97fc92f8a9aa8c9a4c8a5846e74018d946273263b65abafed1bdb76e8ff00
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9e36c63753da817fd4a629e34caf08820ed60201854aa9f97c8b21f85d8b8b6db021db533d880f7cc88fffdcfd26980a0fa4262ef2ff0eef07f2f85bf9e53fcb
|
|
7
|
+
data.tar.gz: cef33601db4d1b1f3ad9b993dc0c8eab890daeff126a1c24a2601dc41a8038b93471d578c743f68d5efffc17d59b92cb16e623fd41ee4958cf8b2ebda3a6af48
|
data/schemas/context.jsonld
CHANGED
data/schemas/meta-schema.json
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"$id": "https://schema-resume.org/meta-schema.json",
|
|
4
4
|
"$comment": "Primary domain: https://schema-resume.org/ | Alternate domain: https://tradik.github.io/schema-resume/",
|
|
5
|
-
"title": "Schema Resume Meta-Schema v1.
|
|
5
|
+
"title": "Schema Resume Meta-Schema v1.3.0",
|
|
6
6
|
"description": "Self-hosted meta-schema providing validation rules for resume documents without external dependencies",
|
|
7
7
|
"type": "object",
|
|
8
|
-
"version": "1.2.0",
|
|
9
8
|
"definitions": {
|
|
10
9
|
"schemaArray": {
|
|
11
10
|
"type": "array",
|
data/schemas/schema-resume.xsd
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
xmlns:sr="https://schema-resume.org/xml/1.0"
|
|
4
4
|
targetNamespace="https://schema-resume.org/xml/1.0"
|
|
5
5
|
elementFormDefault="qualified"
|
|
6
|
-
version="1.
|
|
6
|
+
version="1.3.0">
|
|
7
7
|
|
|
8
8
|
<xs:annotation>
|
|
9
9
|
<xs:documentation>
|
|
10
|
-
Schema Resume XML Schema Definition (XSD) v1.
|
|
10
|
+
Schema Resume XML Schema Definition (XSD) v1.3.0
|
|
11
11
|
Self-hosted XML schema for CV/Resume validation with work authorization and tools tracking
|
|
12
12
|
|
|
13
13
|
This schema provides comprehensive validation for resume/CV documents in XML format.
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
Primary domain: https://schema-resume.org/
|
|
18
18
|
Alternate domain: https://tradik.github.io/schema-resume/
|
|
19
19
|
|
|
20
|
-
Version: 1.
|
|
20
|
+
Version: 1.3.0
|
|
21
21
|
License: MIT
|
|
22
22
|
Repository: https://github.com/tradik/schema-resume
|
|
23
23
|
</xs:documentation>
|
|
@@ -105,15 +105,33 @@
|
|
|
105
105
|
</xs:sequence>
|
|
106
106
|
</xs:complexType>
|
|
107
107
|
|
|
108
|
+
<!--
|
|
109
|
+
Protected personal characteristics. Omit unless the receiving market expects
|
|
110
|
+
them: in the UK and most of the EU a CV should not carry age, date of birth
|
|
111
|
+
or gender. Grouped so that including them is a deliberate choice and a
|
|
112
|
+
processor can strip them in one step.
|
|
113
|
+
-->
|
|
114
|
+
<xs:complexType name="DemographicsType">
|
|
115
|
+
<xs:sequence>
|
|
116
|
+
<xs:element name="age" type="xs:integer" minOccurs="0"/>
|
|
117
|
+
<xs:element name="dateOfBirth" type="sr:iso8601DateType" minOccurs="0"/>
|
|
118
|
+
<xs:element name="gender" type="xs:string" minOccurs="0"/>
|
|
119
|
+
</xs:sequence>
|
|
120
|
+
<xs:attribute name="type" type="xs:string"/>
|
|
121
|
+
</xs:complexType>
|
|
122
|
+
|
|
108
123
|
<!-- Basics Section -->
|
|
109
124
|
<xs:complexType name="BasicsType">
|
|
110
125
|
<xs:sequence>
|
|
111
126
|
<xs:element name="name" type="xs:string" minOccurs="0"/>
|
|
112
127
|
<xs:element name="label" type="xs:string" minOccurs="0"/>
|
|
113
128
|
<xs:element name="title" type="xs:string" minOccurs="0"/>
|
|
129
|
+
<!-- DEPRECATED since 1.3.0: use <demographics>. Kept, in their original
|
|
130
|
+
sequence position, so every 1.x document keeps validating. -->
|
|
114
131
|
<xs:element name="age" type="xs:integer" minOccurs="0"/>
|
|
115
132
|
<xs:element name="dateOfBirth" type="sr:iso8601DateType" minOccurs="0"/>
|
|
116
133
|
<xs:element name="gender" type="xs:string" minOccurs="0"/>
|
|
134
|
+
<xs:element name="demographics" type="sr:DemographicsType" minOccurs="0"/>
|
|
117
135
|
<xs:element name="legalNote" type="sr:LegalNoteType" minOccurs="0"/>
|
|
118
136
|
<xs:element name="image" type="xs:anyURI" minOccurs="0"/>
|
|
119
137
|
<xs:element name="email" type="xs:string" minOccurs="0"/>
|
data/schemas/schema.json
CHANGED
|
@@ -1,23 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"@vocab": "https://schema-resume.org/",
|
|
4
|
-
"schema": "http://schema.org/",
|
|
5
|
-
"xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
6
|
-
"name": "schema:name",
|
|
7
|
-
"email": "schema:email",
|
|
8
|
-
"url": "schema:url",
|
|
9
|
-
"telephone": "schema:telephone",
|
|
10
|
-
"address": "schema:address",
|
|
11
|
-
"jobTitle": "schema:jobTitle",
|
|
12
|
-
"worksFor": "schema:worksFor",
|
|
13
|
-
"alumniOf": "schema:alumniOf",
|
|
14
|
-
"award": "schema:award",
|
|
15
|
-
"knowsAbout": "schema:knowsAbout",
|
|
16
|
-
"knowsLanguage": "schema:knowsLanguage"
|
|
17
|
-
},
|
|
18
|
-
"$schema": "https://schema-resume.org/meta-schema.json",
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
19
3
|
"$id": "https://schema-resume.org/schema.json",
|
|
20
|
-
"$comment": "
|
|
4
|
+
"$comment": "The JSON-LD context for documents that follow this schema is published separately at https://schema-resume.org/context.jsonld — a resume document references it from its own @context. Until 1.3.0 a 14-term fragment of it was embedded here as a top-level @context, which covered 9 of the 102 canonical terms, defined 7 that did not exist, contradicted the canonical definition of `address`, and made this file fail JSON Schema strict-mode validation as an unknown keyword.",
|
|
21
5
|
"additionalProperties": true,
|
|
22
6
|
"definitions": {
|
|
23
7
|
"iso8601": {
|
|
@@ -59,16 +43,45 @@
|
|
|
59
43
|
},
|
|
60
44
|
"age": {
|
|
61
45
|
"type": "integer",
|
|
62
|
-
"description": "
|
|
46
|
+
"description": "DEPRECATED since 1.3.0 — use basics.demographics.age. Still accepted so that every 1.x document keeps validating; scheduled for removal in 2.0.0.",
|
|
47
|
+
"deprecated": true,
|
|
63
48
|
"minimum": 0
|
|
64
49
|
},
|
|
65
50
|
"dateOfBirth": {
|
|
66
51
|
"$ref": "#/definitions/iso8601",
|
|
67
|
-
"description": "
|
|
52
|
+
"description": "DEPRECATED since 1.3.0 — use basics.demographics.dateOfBirth. Still accepted so that every 1.x document keeps validating; scheduled for removal in 2.0.0.",
|
|
53
|
+
"deprecated": true
|
|
68
54
|
},
|
|
69
55
|
"gender": {
|
|
70
56
|
"type": "string",
|
|
71
|
-
"description": "
|
|
57
|
+
"description": "DEPRECATED since 1.3.0 — use basics.demographics.gender. Still accepted so that every 1.x document keeps validating; scheduled for removal in 2.0.0.",
|
|
58
|
+
"deprecated": true
|
|
59
|
+
},
|
|
60
|
+
"demographics": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"description": "Protected personal characteristics. Omit this object entirely unless the receiving market expects it. In the UK and most of the EU a CV should not carry age, date of birth or gender: they are protected characteristics under the Equality Act 2010 and comparable law, employers are advised not to request them, and including them invites discrimination claims. Some markets, notably Germany and Japan, do conventionally include a date of birth. Provided as a separate object so that supplying it is a deliberate choice and so that a processor can drop it in one step.",
|
|
63
|
+
"additionalProperties": true,
|
|
64
|
+
"properties": {
|
|
65
|
+
"@type": {
|
|
66
|
+
"type": "string",
|
|
67
|
+
"description": "Schema.org type. Use 'Person' for Schema.org validation.",
|
|
68
|
+
"default": "Person"
|
|
69
|
+
},
|
|
70
|
+
"age": {
|
|
71
|
+
"type": "integer",
|
|
72
|
+
"description": "Age in years. Derived data that goes stale; prefer dateOfBirth if either is genuinely required.",
|
|
73
|
+
"minimum": 0,
|
|
74
|
+
"maximum": 150
|
|
75
|
+
},
|
|
76
|
+
"dateOfBirth": {
|
|
77
|
+
"$ref": "#/definitions/iso8601",
|
|
78
|
+
"description": "Date of birth in ISO 8601 format. Conventional in some markets (DE, JP), discouraged in others (UK, US)."
|
|
79
|
+
},
|
|
80
|
+
"gender": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"description": "Gender identity, in the person's own words. Free text on purpose: an enumeration here would exclude people. In the EU this may be special-category data under GDPR Article 9."
|
|
83
|
+
}
|
|
84
|
+
}
|
|
72
85
|
},
|
|
73
86
|
"legalNote": {
|
|
74
87
|
"type": "object",
|
|
@@ -119,7 +132,6 @@
|
|
|
119
132
|
"keyAchievements": {
|
|
120
133
|
"type": "array",
|
|
121
134
|
"description": "Notable career achievements and accomplishments",
|
|
122
|
-
"additionalItems": false,
|
|
123
135
|
"items": {
|
|
124
136
|
"type": "string",
|
|
125
137
|
"description": "Individual achievement"
|
|
@@ -128,7 +140,6 @@
|
|
|
128
140
|
"coreCompetencies": {
|
|
129
141
|
"type": "array",
|
|
130
142
|
"description": "Core professional competencies and areas of expertise",
|
|
131
|
-
"additionalItems": false,
|
|
132
143
|
"items": {
|
|
133
144
|
"type": "string",
|
|
134
145
|
"description": "Competency or area of expertise"
|
|
@@ -167,7 +178,6 @@
|
|
|
167
178
|
"profiles": {
|
|
168
179
|
"type": "array",
|
|
169
180
|
"description": "List of social media and professional network profiles",
|
|
170
|
-
"additionalItems": false,
|
|
171
181
|
"items": {
|
|
172
182
|
"type": "object",
|
|
173
183
|
"additionalProperties": true,
|
|
@@ -191,7 +201,6 @@
|
|
|
191
201
|
"nationalities": {
|
|
192
202
|
"type": "array",
|
|
193
203
|
"description": "Citizenship and nationality information",
|
|
194
|
-
"additionalItems": false,
|
|
195
204
|
"items": {
|
|
196
205
|
"type": "object",
|
|
197
206
|
"additionalProperties": true,
|
|
@@ -214,7 +223,6 @@
|
|
|
214
223
|
"workAuthorization": {
|
|
215
224
|
"type": "array",
|
|
216
225
|
"description": "Work authorization information for multiple countries",
|
|
217
|
-
"additionalItems": false,
|
|
218
226
|
"items": {
|
|
219
227
|
"type": "object",
|
|
220
228
|
"additionalProperties": true,
|
|
@@ -256,7 +264,6 @@
|
|
|
256
264
|
"work": {
|
|
257
265
|
"type": "array",
|
|
258
266
|
"description": "Employment history including current and previous positions",
|
|
259
|
-
"additionalItems": false,
|
|
260
267
|
"items": {
|
|
261
268
|
"type": "object",
|
|
262
269
|
"additionalProperties": true,
|
|
@@ -365,7 +372,6 @@
|
|
|
365
372
|
"highlights": {
|
|
366
373
|
"type": "array",
|
|
367
374
|
"description": "Notable achievements and accomplishments in this role",
|
|
368
|
-
"additionalItems": false,
|
|
369
375
|
"items": {
|
|
370
376
|
"type": "string",
|
|
371
377
|
"description": "Individual achievement or accomplishment"
|
|
@@ -374,7 +380,6 @@
|
|
|
374
380
|
"positions": {
|
|
375
381
|
"type": "array",
|
|
376
382
|
"description": "Multiple roles held at the same organization over time, capturing career progression such as promotions. Use this to avoid repeating organization details (name, location, url) for each role. The top-level 'position', 'startDate', 'endDate', 'summary', and 'highlights' fields remain valid for single-role entries; prefer either the singular fields or this array, not both, for the same information.",
|
|
377
|
-
"additionalItems": false,
|
|
378
383
|
"items": {
|
|
379
384
|
"type": "object",
|
|
380
385
|
"additionalProperties": true,
|
|
@@ -407,7 +412,6 @@
|
|
|
407
412
|
"highlights": {
|
|
408
413
|
"type": "array",
|
|
409
414
|
"description": "Notable achievements and accomplishments in this specific role",
|
|
410
|
-
"additionalItems": false,
|
|
411
415
|
"items": {
|
|
412
416
|
"type": "string",
|
|
413
417
|
"description": "Individual achievement or accomplishment"
|
|
@@ -422,7 +426,6 @@
|
|
|
422
426
|
"volunteer": {
|
|
423
427
|
"type": "array",
|
|
424
428
|
"description": "Volunteer work and community involvement activities",
|
|
425
|
-
"additionalItems": false,
|
|
426
429
|
"items": {
|
|
427
430
|
"type": "object",
|
|
428
431
|
"additionalProperties": true,
|
|
@@ -459,7 +462,6 @@
|
|
|
459
462
|
"highlights": {
|
|
460
463
|
"type": "array",
|
|
461
464
|
"description": "Key accomplishments and impact made through volunteer work",
|
|
462
|
-
"additionalItems": false,
|
|
463
465
|
"items": {
|
|
464
466
|
"type": "string",
|
|
465
467
|
"description": "Specific achievement or contribution"
|
|
@@ -471,7 +473,6 @@
|
|
|
471
473
|
"education": {
|
|
472
474
|
"type": "array",
|
|
473
475
|
"description": "Academic qualifications and educational background",
|
|
474
|
-
"additionalItems": false,
|
|
475
476
|
"items": {
|
|
476
477
|
"type": "object",
|
|
477
478
|
"additionalProperties": true,
|
|
@@ -532,7 +533,6 @@
|
|
|
532
533
|
"courses": {
|
|
533
534
|
"type": "array",
|
|
534
535
|
"description": "Relevant modules, courses, or subjects studied",
|
|
535
|
-
"additionalItems": false,
|
|
536
536
|
"items": {
|
|
537
537
|
"type": "string",
|
|
538
538
|
"description": "Course name or code"
|
|
@@ -544,7 +544,6 @@
|
|
|
544
544
|
"awards": {
|
|
545
545
|
"type": "array",
|
|
546
546
|
"description": "Professional awards, honours, and recognitions received",
|
|
547
|
-
"additionalItems": false,
|
|
548
547
|
"items": {
|
|
549
548
|
"type": "object",
|
|
550
549
|
"additionalProperties": true,
|
|
@@ -575,7 +574,6 @@
|
|
|
575
574
|
"certificates": {
|
|
576
575
|
"type": "array",
|
|
577
576
|
"description": "Professional certifications and accreditations obtained",
|
|
578
|
-
"additionalItems": false,
|
|
579
577
|
"items": {
|
|
580
578
|
"type": "object",
|
|
581
579
|
"additionalProperties": true,
|
|
@@ -603,7 +601,6 @@
|
|
|
603
601
|
"publications": {
|
|
604
602
|
"type": "array",
|
|
605
603
|
"description": "Published works including papers, articles, and books",
|
|
606
|
-
"additionalItems": false,
|
|
607
604
|
"items": {
|
|
608
605
|
"type": "object",
|
|
609
606
|
"additionalProperties": true,
|
|
@@ -635,7 +632,6 @@
|
|
|
635
632
|
"skills": {
|
|
636
633
|
"type": "array",
|
|
637
634
|
"description": "Technical and professional competencies",
|
|
638
|
-
"additionalItems": false,
|
|
639
635
|
"items": {
|
|
640
636
|
"type": "object",
|
|
641
637
|
"additionalProperties": true,
|
|
@@ -660,7 +656,6 @@
|
|
|
660
656
|
"keywords": {
|
|
661
657
|
"type": "array",
|
|
662
658
|
"description": "Specific technologies, tools, or techniques within this skill area",
|
|
663
|
-
"additionalItems": false,
|
|
664
659
|
"items": {
|
|
665
660
|
"type": "string",
|
|
666
661
|
"description": "Technology or tool name"
|
|
@@ -672,7 +667,6 @@
|
|
|
672
667
|
"tools": {
|
|
673
668
|
"type": "array",
|
|
674
669
|
"description": "Specific tools, software, and platforms used professionally",
|
|
675
|
-
"additionalItems": false,
|
|
676
670
|
"items": {
|
|
677
671
|
"type": "object",
|
|
678
672
|
"additionalProperties": true,
|
|
@@ -713,7 +707,6 @@
|
|
|
713
707
|
"languages": {
|
|
714
708
|
"type": "array",
|
|
715
709
|
"description": "Languages spoken and proficiency levels",
|
|
716
|
-
"additionalItems": false,
|
|
717
710
|
"items": {
|
|
718
711
|
"type": "object",
|
|
719
712
|
"additionalProperties": true,
|
|
@@ -736,7 +729,6 @@
|
|
|
736
729
|
"interests": {
|
|
737
730
|
"type": "array",
|
|
738
731
|
"description": "Personal interests and hobbies outside of work",
|
|
739
|
-
"additionalItems": false,
|
|
740
732
|
"items": {
|
|
741
733
|
"type": "object",
|
|
742
734
|
"additionalProperties": true,
|
|
@@ -752,7 +744,6 @@
|
|
|
752
744
|
"keywords": {
|
|
753
745
|
"type": "array",
|
|
754
746
|
"description": "Specific topics or activities within this interest",
|
|
755
|
-
"additionalItems": false,
|
|
756
747
|
"items": {
|
|
757
748
|
"type": "string",
|
|
758
749
|
"description": "Specific topic or activity"
|
|
@@ -764,7 +755,6 @@
|
|
|
764
755
|
"references": {
|
|
765
756
|
"type": "array",
|
|
766
757
|
"description": "Professional references and testimonials",
|
|
767
|
-
"additionalItems": false,
|
|
768
758
|
"items": {
|
|
769
759
|
"type": "object",
|
|
770
760
|
"additionalProperties": true,
|
|
@@ -783,7 +773,6 @@
|
|
|
783
773
|
"projects": {
|
|
784
774
|
"type": "array",
|
|
785
775
|
"description": "Personal and professional projects undertaken",
|
|
786
|
-
"additionalItems": false,
|
|
787
776
|
"items": {
|
|
788
777
|
"type": "object",
|
|
789
778
|
"additionalProperties": true,
|
|
@@ -803,7 +792,6 @@
|
|
|
803
792
|
"highlights": {
|
|
804
793
|
"type": "array",
|
|
805
794
|
"description": "Key features, achievements, or outcomes of the project",
|
|
806
|
-
"additionalItems": false,
|
|
807
795
|
"items": {
|
|
808
796
|
"type": "string",
|
|
809
797
|
"description": "Individual highlight or achievement"
|
|
@@ -812,7 +800,6 @@
|
|
|
812
800
|
"keywords": {
|
|
813
801
|
"type": "array",
|
|
814
802
|
"description": "Technologies, methodologies, or tools used in the project",
|
|
815
|
-
"additionalItems": false,
|
|
816
803
|
"items": {
|
|
817
804
|
"type": "string",
|
|
818
805
|
"description": "Technology or tool name"
|
|
@@ -834,7 +821,6 @@
|
|
|
834
821
|
"roles": {
|
|
835
822
|
"type": "array",
|
|
836
823
|
"description": "Roles held or responsibilities taken in the project",
|
|
837
|
-
"additionalItems": false,
|
|
838
824
|
"items": {
|
|
839
825
|
"type": "string",
|
|
840
826
|
"description": "Role or responsibility"
|
|
@@ -887,8 +873,7 @@
|
|
|
887
873
|
}
|
|
888
874
|
}
|
|
889
875
|
},
|
|
890
|
-
"title": "Schema Resume v1.
|
|
876
|
+
"title": "Schema Resume v1.3.0",
|
|
891
877
|
"description": "Self-hosted JSON-LD schema for CV/Resume parsing and validation with work authorization and tools tracking",
|
|
892
|
-
"type": "object"
|
|
893
|
-
"version": "1.2.0"
|
|
878
|
+
"type": "object"
|
|
894
879
|
}
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: schema-resume-validator
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Schema Resume
|
|
@@ -9,22 +9,28 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2026-
|
|
12
|
+
date: 2026-08-26 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: json-schema
|
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
|
17
17
|
requirements:
|
|
18
|
-
- - "
|
|
18
|
+
- - ">="
|
|
19
19
|
- !ruby/object:Gem::Version
|
|
20
20
|
version: '4.0'
|
|
21
|
+
- - "<"
|
|
22
|
+
- !ruby/object:Gem::Version
|
|
23
|
+
version: '7'
|
|
21
24
|
type: :runtime
|
|
22
25
|
prerelease: false
|
|
23
26
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
27
|
requirements:
|
|
25
|
-
- - "
|
|
28
|
+
- - ">="
|
|
26
29
|
- !ruby/object:Gem::Version
|
|
27
30
|
version: '4.0'
|
|
31
|
+
- - "<"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '7'
|
|
28
34
|
- !ruby/object:Gem::Dependency
|
|
29
35
|
name: json
|
|
30
36
|
requirement: !ruby/object:Gem::Requirement
|