@pubid/pubid 0.1.31 → 0.1.33
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.
- package/artifact/corpus.json.gz +0 -0
- package/dist/conformance/implementation.d.ts +4 -0
- package/dist/flavors/iec/index.js +12 -5
- package/dist/flavors/ieee/index.js +321 -113
- package/dist/flavors/ieee/model.d.ts +18 -0
- package/dist/flavors/ieee/model.js +62 -8
- package/dist/flavors/ieee/preprocessor.js +3 -0
- package/dist/flavors/ieee/update_codes.js +1 -1
- package/dist/flavors/iho/index.js +198 -35
- package/dist/flavors/jis/index.js +74 -2
- package/dist/flavors/nist/grammar.js +44 -16
- package/dist/flavors/nist/index.js +17 -2
- package/dist/implementations/corpus-mode.d.ts +3 -0
- package/dist/implementations/corpus-mode.js +7 -0
- package/dist/model/identifier.d.ts +3 -0
- package/dist/model/identifier.js +5 -0
- package/dist/urn/parsers.js +57 -20
- package/package.json +2 -2
- package/vendor/parg/adobe.json +1 -1
- package/vendor/parg/aiee.json +1 -1
- package/vendor/parg/amca.json +1 -1
- package/vendor/parg/ansi.json +1 -1
- package/vendor/parg/api.json +1 -1
- package/vendor/parg/ashrae.json +1 -1
- package/vendor/parg/asme.json +1 -1
- package/vendor/parg/astm.json +1 -1
- package/vendor/parg/bipm.json +1 -1
- package/vendor/parg/bsi.json +1 -1
- package/vendor/parg/calconnect.json +1 -1
- package/vendor/parg/ccsds.json +1 -1
- package/vendor/parg/cen_cenelec.json +1 -1
- package/vendor/parg/cie.json +1 -1
- package/vendor/parg/csa.json +1 -1
- package/vendor/parg/doi.json +1 -1
- package/vendor/parg/easc.json +1 -1
- package/vendor/parg/ecma.json +1 -1
- package/vendor/parg/etsi.json +1 -1
- package/vendor/parg/evs.json +1 -1
- package/vendor/parg/gb.json +1 -1
- package/vendor/parg/gost.json +1 -1
- package/vendor/parg/iala.json +1 -1
- package/vendor/parg/iana.json +1 -1
- package/vendor/parg/idf.json +1 -1
- package/vendor/parg/iec.json +1 -1
- package/vendor/parg/ieee.json +1 -29571
- package/vendor/parg/ietf.json +1 -1
- package/vendor/parg/iho.json +1 -0
- package/vendor/parg/ire.json +1 -1
- package/vendor/parg/isbn.json +1 -1
- package/vendor/parg/iso.json +1 -8510
- package/vendor/parg/itu.json +1 -1
- package/vendor/parg/jcgm.json +1 -1
- package/vendor/parg/jis.json +1 -1
- package/vendor/parg/nesc.json +1 -1
- package/vendor/parg/nist.json +1 -9588
- package/vendor/parg/oasis.json +1 -1
- package/vendor/parg/ogc.json +1 -1
- package/vendor/parg/oiml.json +1 -1
- package/vendor/parg/omg.json +1 -1
- package/vendor/parg/parg.json +1 -1
- package/vendor/parg/plateau.json +1 -1
- package/vendor/parg/sae.json +1 -1
- package/vendor/parg/tgpp.json +1 -1
- package/vendor/parg/un.json +1 -1
- package/vendor/parg/w3c.json +1 -1
- package/vendor/parg/xsf.json +1 -1
package/vendor/parg/evs.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.3.0","grammar":"PubidEvs","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":2}},{"Str":{"pattern":"pr"}},{"Named":{"name":"draft_prefix","atom":1}},{"Repetition":{"atom":0,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"EVS"}},{"Entity":{"atom":11}},{"Entity":{"atom":7}},{"Str":{"pattern":"-"}},{"Entity":{"atom":9}},{"Str":{"pattern":" "}},{"Alternative":{"atoms":[6,8]}},{"Named":{"name":"evs_separator","atom":10}},{"Entity":{"atom":256}},{"Entity":{"atom":121}},{"Entity":{"atom":18}},{"Str":{"pattern":"FprEN"}},{"Str":{"pattern":"prEN"}},{"Alternative":{"atoms":[15,16]}},{"Named":{"name":"type_with_stage","atom":17}},{"Entity":{"atom":49}},{"Str":{"pattern":"CWA"}},{"Str":{"pattern":"HD"}},{"Str":{"pattern":"ES"}},{"Str":{"pattern":"CR"}},{"Str":{"pattern":"ENV"}},{"Alternative":{"atoms":[20,21,22,23,24]}},{"Named":{"name":"publisher","atom":25}},{"Str":{"pattern":"EN"}},{"Str":{"pattern":"CEN"}},{"Alternative":{"atoms":[27,28]}},{"Named":{"name":"publisher","atom":29}},{"Entity":{"atom":41}},{"Entity":{"atom":39}},{"Entity":{"atom":34}},{"Str":{"pattern":"/"}},{"Str":{"pattern":"CLC"}},{"Str":{"pattern":"ETSI"}},{"Alternative":{"atoms":[35,36]}},{"Named":{"name":"copublisher","atom":37}},{"Sequence":{"atoms":[33,38]}},{"Repetition":{"atom":32,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"copublishers","atom":40}},{"Repetition":{"atom":31,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[30,42]}},{"Str":{"pattern":"CLC"}},{"Named":{"name":"publisher","atom":44}},{"Entity":{"atom":41}},{"Repetition":{"atom":46,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[45,47]}},{"Alternative":{"atoms":[26,43,48]}},{"Alternative":{"atoms":[14,19]}},{"Entity":{"atom":52}},{"Str":{"pattern":" "}},{"Entity":{"atom":63}},{"Entity":{"atom":55}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":54,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":52}},{"Entity":{"atom":55}},{"Repetition":{"atom":58,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[57,59]}},{"Repetition":{"atom":60,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[56,61]}},{"Named":{"name":"number","atom":62}},{"Entity":{"atom":75}},{"Entity":{"atom":73}},{"Entity":{"atom":67}},{"Str":{"pattern":"-"}},{"Entity":{"atom":55}},{"Entity":{"atom":67}},{"Alternative":{"atoms":[68,69]}},{"Repetition":{"atom":70,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":71}},{"Sequence":{"atoms":[66,72]}},{"Repetition":{"atom":65,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"parts","atom":74}},{"Entity":{"atom":52}},{"Str":{"pattern":"AMD"}},{"Entity":{"atom":55}},{"Repetition":{"atom":78,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":79}},{"Entity":{"atom":52}},{"Str":{"pattern":"FRAG"}},{"Entity":{"atom":55}},{"Repetition":{"atom":83,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":84}},{"Sequence":{"atoms":[50,51,53,64,76,77,80,81,82,85]}},{"Entity":{"atom":18}},{"Entity":{"atom":49}},{"Alternative":{"atoms":[87,88]}},{"Entity":{"atom":52}},{"Entity":{"atom":63}},{"Entity":{"atom":75}},{"Entity":{"atom":99}},{"Entity":{"atom":95}},{"Str":{"pattern":":"}},{"Entity":{"atom":55}},{"Repetition":{"atom":96,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":97}},{"Sequence":{"atoms":[94,98]}},{"Repetition":{"atom":93,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":102}},{"Str":{"pattern":"+"}},{"Entity":{"atom":34}},{"Alternative":{"atoms":[101,103]}},{"Str":{"pattern":"A"}},{"Entity":{"atom":55}},{"Repetition":{"atom":106,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":107}},{"Entity":{"atom":95}},{"Entity":{"atom":55}},{"Repetition":{"atom":110,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amendment_year","atom":111}},{"Sequence":{"atoms":[109,112]}},{"Repetition":{"atom":113,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":52}},{"Str":{"pattern":"FRAG"}},{"Entity":{"atom":55}},{"Repetition":{"atom":117,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":118}},{"Sequence":{"atoms":[89,90,91,92,100,104,105,108,114,115,116,119]}},{"Alternative":{"atoms":[86,120]}},{"Entity":{"atom":18}},{"Entity":{"atom":49}},{"Alternative":{"atoms":[122,123]}},{"Entity":{"atom":52}},{"Entity":{"atom":211}},{"Entity":{"atom":131}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Str":{"pattern":"CISPR"}},{"Alternative":{"atoms":[128,129,130]}},{"Entity":{"atom":194}},{"Entity":{"atom":149}},{"Entity":{"atom":102}},{"Named":{"name":"amd_sep_plus","atom":134}},{"Entity":{"atom":34}},{"Named":{"name":"amd_sep_slash","atom":136}},{"Alternative":{"atoms":[135,137]}},{"Str":{"pattern":"A"}},{"Entity":{"atom":55}},{"Repetition":{"atom":140,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":141}},{"Entity":{"atom":95}},{"Entity":{"atom":55}},{"Repetition":{"atom":144,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":145}},{"Sequence":{"atoms":[143,146]}},{"Repetition":{"atom":147,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[138,139,142,148]}},{"Entity":{"atom":192}},{"Entity":{"atom":102}},{"Named":{"name":"amd_sep_plus","atom":151}},{"Entity":{"atom":34}},{"Named":{"name":"amd_sep_slash","atom":153}},{"Alternative":{"atoms":[152,154]}},{"Str":{"pattern":"AC"}},{"Entity":{"atom":55}},{"Entity":{"atom":55}},{"Repetition":{"atom":158,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[157,159]}},{"Named":{"name":"cor_number","atom":160}},{"Repetition":{"atom":161,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":184}},{"Entity":{"atom":95}},{"Entity":{"atom":55}},{"Repetition":{"atom":165,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":166}},{"Entity":{"atom":67}},{"Entity":{"atom":183}},{"Str":{"pattern":"01"}},{"Str":{"pattern":"02"}},{"Str":{"pattern":"03"}},{"Str":{"pattern":"04"}},{"Str":{"pattern":"05"}},{"Str":{"pattern":"06"}},{"Str":{"pattern":"07"}},{"Str":{"pattern":"08"}},{"Str":{"pattern":"09"}},{"Str":{"pattern":"10"}},{"Str":{"pattern":"11"}},{"Str":{"pattern":"12"}},{"Alternative":{"atoms":[170,171,172,173,174,175,176,177,178,179,180,181]}},{"Named":{"name":"month","atom":182}},{"Sequence":{"atoms":[164,167,168,169]}},{"Entity":{"atom":95}},{"Entity":{"atom":55}},{"Repetition":{"atom":186,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":187}},{"Sequence":{"atoms":[185,188]}},{"Alternative":{"atoms":[163,189]}},{"Repetition":{"atom":190,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[155,156,162,191]}},{"Alternative":{"atoms":[133,150]}},{"Named":{"name":"supplement","atom":193}},{"Lookahead":{"atom":132,"positive":false}},{"Entity":{"atom":202}},{"Entity":{"atom":52}},{"Str":{"pattern":"ED"}},{"Entity":{"atom":55}},{"Repetition":{"atom":199,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"edition","atom":200}},{"Sequence":{"atoms":[197,198,201]}},{"Lookahead":{"atom":196,"positive":false}},{"Entity":{"atom":207}},{"Re":{"pattern":"[\\x01-\\x09]"}},{"Re":{"pattern":"[\\x0b-\\u{10ffff}]"}},{"Alternative":{"atoms":[205,206]}},{"Sequence":{"atoms":[195,203,204]}},{"Repetition":{"atom":208,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[127,209]}},{"Named":{"name":"adopted_string","atom":210}},{"Sequence":{"atoms":[125,126]}},{"Repetition":{"atom":212,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":52}},{"Entity":{"atom":221}},{"Str":{"pattern":"Guide"}},{"Str":{"pattern":"GUIDE"}},{"Str":{"pattern":"TR"}},{"Str":{"pattern":"TS"}},{"Alternative":{"atoms":[216,217,218,219]}},{"Named":{"name":"type","atom":220}},{"Sequence":{"atoms":[214,215]}},{"Entity":{"atom":34}},{"Entity":{"atom":221}},{"Sequence":{"atoms":[223,224]}},{"Alternative":{"atoms":[222,225]}},{"Repetition":{"atom":226,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":52}},{"Entity":{"atom":63}},{"Entity":{"atom":75}},{"Entity":{"atom":243}},{"Entity":{"atom":52}},{"Str":{"pattern":"V"}},{"Entity":{"atom":55}},{"Repetition":{"atom":234,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Entity":{"atom":55}},{"Repetition":{"atom":237,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Entity":{"atom":55}},{"Repetition":{"atom":240,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[232,233,235,236,238,239,241]}},{"Named":{"name":"version","atom":242}},{"Repetition":{"atom":231,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":99}},{"Repetition":{"atom":245,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[228,229,230,244,246]}},{"Repetition":{"atom":247,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":252}},{"Entity":{"atom":194}},{"Repetition":{"atom":250,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"supplements","atom":251}},{"Entity":{"atom":202}},{"Repetition":{"atom":253,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[124,213,227,248,249,254]}},{"Alternative":{"atoms":[13,255]}},{"Named":{"name":"adopted","atom":12}},{"Entity":{"atom":282}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Alternative":{"atoms":[259,260]}},{"Named":{"name":"intl_org","atom":261}},{"Entity":{"atom":9}},{"Entity":{"atom":265}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":264,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":266}},{"Sequence":{"atoms":[262,263,267]}},{"Entity":{"atom":7}},{"Entity":{"atom":265}},{"Repetition":{"atom":270,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":271}},{"Sequence":{"atoms":[269,272]}},{"Repetition":{"atom":273,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":276}},{"Str":{"pattern":":"}},{"Entity":{"atom":265}},{"Repetition":{"atom":277,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":278}},{"Sequence":{"atoms":[275,279]}},{"Repetition":{"atom":280,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[268,274,281]}},{"Named":{"name":"intl","atom":258}},{"Entity":{"atom":301}},{"Str":{"pattern":"TS"}},{"Str":{"pattern":"TR"}},{"Alternative":{"atoms":[285,286]}},{"Named":{"name":"evs_type","atom":287}},{"Entity":{"atom":9}},{"Sequence":{"atoms":[288,289]}},{"Repetition":{"atom":290,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":265}},{"Repetition":{"atom":292,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":293}},{"Entity":{"atom":276}},{"Entity":{"atom":265}},{"Repetition":{"atom":296,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":297}},{"Sequence":{"atoms":[295,298]}},{"Repetition":{"atom":299,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[291,294,300]}},{"Named":{"name":"plain","atom":284}},{"Alternative":{"atoms":[257,283,302]}},{"Entity":{"atom":327}},{"Entity":{"atom":306}},{"Str":{"pattern":"+"}},{"Named":{"name":"supp_plus","atom":305}},{"Entity":{"atom":309}},{"Str":{"pattern":"/"}},{"Named":{"name":"supp_slash","atom":308}},{"Entity":{"atom":9}},{"Named":{"name":"supp_space","atom":311}},{"Alternative":{"atoms":[307,310,312]}},{"Str":{"pattern":"AMD"}},{"Named":{"name":"amd_kind","atom":314}},{"Sequence":{"atoms":[313,315]}},{"Entity":{"atom":265}},{"Repetition":{"atom":317,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":318}},{"Entity":{"atom":276}},{"Entity":{"atom":265}},{"Repetition":{"atom":321,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":322}},{"Sequence":{"atoms":[320,323]}},{"Repetition":{"atom":324,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[316,319,325]}},{"Named":{"name":"evs_amd","atom":326}},{"Repetition":{"atom":304,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":349}},{"Entity":{"atom":306}},{"Named":{"name":"supp_plus","atom":330}},{"Entity":{"atom":309}},{"Named":{"name":"supp_slash","atom":332}},{"Alternative":{"atoms":[331,333]}},{"Str":{"pattern":"COR"}},{"Named":{"name":"cor_kind","atom":335}},{"Sequence":{"atoms":[334,336]}},{"Entity":{"atom":265}},{"Repetition":{"atom":338,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"cor_number","atom":339}},{"Repetition":{"atom":340,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":276}},{"Entity":{"atom":265}},{"Repetition":{"atom":343,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"cor_year","atom":344}},{"Sequence":{"atoms":[342,345]}},{"Repetition":{"atom":346,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[337,341,347]}},{"Named":{"name":"evs_cor","atom":348}},{"Entity":{"atom":366}},{"Entity":{"atom":9}},{"Named":{"name":"supp_space","atom":351}},{"Str":{"pattern":"AC"}},{"Named":{"name":"cor_kind","atom":353}},{"Entity":{"atom":265}},{"Repetition":{"atom":355,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"cor_number","atom":356}},{"Repetition":{"atom":357,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":276}},{"Entity":{"atom":265}},{"Repetition":{"atom":360,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"cor_year","atom":361}},{"Sequence":{"atoms":[359,362]}},{"Repetition":{"atom":363,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[352,354,358,364]}},{"Named":{"name":"evs_cor","atom":365}},{"Alternative":{"atoms":[329,350]}},{"Repetition":{"atom":367,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":384}},{"Entity":{"atom":306}},{"Named":{"name":"supp_plus","atom":370}},{"Entity":{"atom":309}},{"Named":{"name":"supp_slash","atom":372}},{"Alternative":{"atoms":[371,373]}},{"Str":{"pattern":"NA"}},{"Sequence":{"atoms":[374,375]}},{"Entity":{"atom":276}},{"Entity":{"atom":265}},{"Repetition":{"atom":378,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"na_year","atom":379}},{"Sequence":{"atoms":[377,380]}},{"Repetition":{"atom":381,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[376,382]}},{"Named":{"name":"na","atom":383}},{"Repetition":{"atom":369,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[3,4,5,303,328,368,385]}}],"root":386},"bindings":[]},"cen_cenelec.identifier":{"root":"cen_cenelec.identifier","grammar":{"atoms":[{"Entity":{"atom":108}},{"Entity":{"atom":5}},{"Str":{"pattern":"FprEN"}},{"Str":{"pattern":"prEN"}},{"Alternative":{"atoms":[2,3]}},{"Named":{"name":"type_with_stage","atom":4}},{"Entity":{"atom":36}},{"Str":{"pattern":"CWA"}},{"Str":{"pattern":"HD"}},{"Str":{"pattern":"ES"}},{"Str":{"pattern":"CR"}},{"Str":{"pattern":"ENV"}},{"Alternative":{"atoms":[7,8,9,10,11]}},{"Named":{"name":"publisher","atom":12}},{"Str":{"pattern":"EN"}},{"Str":{"pattern":"CEN"}},{"Alternative":{"atoms":[14,15]}},{"Named":{"name":"publisher","atom":16}},{"Entity":{"atom":28}},{"Entity":{"atom":26}},{"Entity":{"atom":21}},{"Str":{"pattern":"/"}},{"Str":{"pattern":"CLC"}},{"Str":{"pattern":"ETSI"}},{"Alternative":{"atoms":[22,23]}},{"Named":{"name":"copublisher","atom":24}},{"Sequence":{"atoms":[20,25]}},{"Repetition":{"atom":19,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"copublishers","atom":27}},{"Repetition":{"atom":18,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[17,29]}},{"Str":{"pattern":"CLC"}},{"Named":{"name":"publisher","atom":31}},{"Entity":{"atom":28}},{"Repetition":{"atom":33,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[32,34]}},{"Alternative":{"atoms":[13,30,35]}},{"Alternative":{"atoms":[1,6]}},{"Entity":{"atom":39}},{"Str":{"pattern":" "}},{"Entity":{"atom":50}},{"Entity":{"atom":42}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":41,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":39}},{"Entity":{"atom":42}},{"Repetition":{"atom":45,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[44,46]}},{"Repetition":{"atom":47,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[43,48]}},{"Named":{"name":"number","atom":49}},{"Entity":{"atom":62}},{"Entity":{"atom":60}},{"Entity":{"atom":54}},{"Str":{"pattern":"-"}},{"Entity":{"atom":42}},{"Entity":{"atom":54}},{"Alternative":{"atoms":[55,56]}},{"Repetition":{"atom":57,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":58}},{"Sequence":{"atoms":[53,59]}},{"Repetition":{"atom":52,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"parts","atom":61}},{"Entity":{"atom":39}},{"Str":{"pattern":"AMD"}},{"Entity":{"atom":42}},{"Repetition":{"atom":65,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":66}},{"Entity":{"atom":39}},{"Str":{"pattern":"FRAG"}},{"Entity":{"atom":42}},{"Repetition":{"atom":70,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":71}},{"Sequence":{"atoms":[37,38,40,51,63,64,67,68,69,72]}},{"Entity":{"atom":5}},{"Entity":{"atom":36}},{"Alternative":{"atoms":[74,75]}},{"Entity":{"atom":39}},{"Entity":{"atom":50}},{"Entity":{"atom":62}},{"Entity":{"atom":86}},{"Entity":{"atom":82}},{"Str":{"pattern":":"}},{"Entity":{"atom":42}},{"Repetition":{"atom":83,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":84}},{"Sequence":{"atoms":[81,85]}},{"Repetition":{"atom":80,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":89}},{"Str":{"pattern":"+"}},{"Entity":{"atom":21}},{"Alternative":{"atoms":[88,90]}},{"Str":{"pattern":"A"}},{"Entity":{"atom":42}},{"Repetition":{"atom":93,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":94}},{"Entity":{"atom":82}},{"Entity":{"atom":42}},{"Repetition":{"atom":97,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amendment_year","atom":98}},{"Sequence":{"atoms":[96,99]}},{"Repetition":{"atom":100,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":39}},{"Str":{"pattern":"FRAG"}},{"Entity":{"atom":42}},{"Repetition":{"atom":104,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":105}},{"Sequence":{"atoms":[76,77,78,79,87,91,92,95,101,102,103,106]}},{"Alternative":{"atoms":[73,107]}},{"Entity":{"atom":5}},{"Entity":{"atom":36}},{"Alternative":{"atoms":[109,110]}},{"Entity":{"atom":39}},{"Entity":{"atom":198}},{"Entity":{"atom":118}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Str":{"pattern":"CISPR"}},{"Alternative":{"atoms":[115,116,117]}},{"Entity":{"atom":181}},{"Entity":{"atom":136}},{"Entity":{"atom":89}},{"Named":{"name":"amd_sep_plus","atom":121}},{"Entity":{"atom":21}},{"Named":{"name":"amd_sep_slash","atom":123}},{"Alternative":{"atoms":[122,124]}},{"Str":{"pattern":"A"}},{"Entity":{"atom":42}},{"Repetition":{"atom":127,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":128}},{"Entity":{"atom":82}},{"Entity":{"atom":42}},{"Repetition":{"atom":131,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":132}},{"Sequence":{"atoms":[130,133]}},{"Repetition":{"atom":134,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[125,126,129,135]}},{"Entity":{"atom":179}},{"Entity":{"atom":89}},{"Named":{"name":"amd_sep_plus","atom":138}},{"Entity":{"atom":21}},{"Named":{"name":"amd_sep_slash","atom":140}},{"Alternative":{"atoms":[139,141]}},{"Str":{"pattern":"AC"}},{"Entity":{"atom":42}},{"Entity":{"atom":42}},{"Repetition":{"atom":145,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[144,146]}},{"Named":{"name":"cor_number","atom":147}},{"Repetition":{"atom":148,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":171}},{"Entity":{"atom":82}},{"Entity":{"atom":42}},{"Repetition":{"atom":152,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":153}},{"Entity":{"atom":54}},{"Entity":{"atom":170}},{"Str":{"pattern":"01"}},{"Str":{"pattern":"02"}},{"Str":{"pattern":"03"}},{"Str":{"pattern":"04"}},{"Str":{"pattern":"05"}},{"Str":{"pattern":"06"}},{"Str":{"pattern":"07"}},{"Str":{"pattern":"08"}},{"Str":{"pattern":"09"}},{"Str":{"pattern":"10"}},{"Str":{"pattern":"11"}},{"Str":{"pattern":"12"}},{"Alternative":{"atoms":[157,158,159,160,161,162,163,164,165,166,167,168]}},{"Named":{"name":"month","atom":169}},{"Sequence":{"atoms":[151,154,155,156]}},{"Entity":{"atom":82}},{"Entity":{"atom":42}},{"Repetition":{"atom":173,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":174}},{"Sequence":{"atoms":[172,175]}},{"Alternative":{"atoms":[150,176]}},{"Repetition":{"atom":177,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[142,143,149,178]}},{"Alternative":{"atoms":[120,137]}},{"Named":{"name":"supplement","atom":180}},{"Lookahead":{"atom":119,"positive":false}},{"Entity":{"atom":189}},{"Entity":{"atom":39}},{"Str":{"pattern":"ED"}},{"Entity":{"atom":42}},{"Repetition":{"atom":186,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"edition","atom":187}},{"Sequence":{"atoms":[184,185,188]}},{"Lookahead":{"atom":183,"positive":false}},{"Entity":{"atom":194}},{"Re":{"pattern":"[\\x01-\\x09]"}},{"Re":{"pattern":"[\\x0b-\\u{10ffff}]"}},{"Alternative":{"atoms":[192,193]}},{"Sequence":{"atoms":[182,190,191]}},{"Repetition":{"atom":195,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[114,196]}},{"Named":{"name":"adopted_string","atom":197}},{"Sequence":{"atoms":[112,113]}},{"Repetition":{"atom":199,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":39}},{"Entity":{"atom":208}},{"Str":{"pattern":"Guide"}},{"Str":{"pattern":"GUIDE"}},{"Str":{"pattern":"TR"}},{"Str":{"pattern":"TS"}},{"Alternative":{"atoms":[203,204,205,206]}},{"Named":{"name":"type","atom":207}},{"Sequence":{"atoms":[201,202]}},{"Entity":{"atom":21}},{"Entity":{"atom":208}},{"Sequence":{"atoms":[210,211]}},{"Alternative":{"atoms":[209,212]}},{"Repetition":{"atom":213,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":39}},{"Entity":{"atom":50}},{"Entity":{"atom":62}},{"Entity":{"atom":230}},{"Entity":{"atom":39}},{"Str":{"pattern":"V"}},{"Entity":{"atom":42}},{"Repetition":{"atom":221,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Entity":{"atom":42}},{"Repetition":{"atom":224,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Entity":{"atom":42}},{"Repetition":{"atom":227,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[219,220,222,223,225,226,228]}},{"Named":{"name":"version","atom":229}},{"Repetition":{"atom":218,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":86}},{"Repetition":{"atom":232,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[215,216,217,231,233]}},{"Repetition":{"atom":234,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":239}},{"Entity":{"atom":181}},{"Repetition":{"atom":237,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"supplements","atom":238}},{"Entity":{"atom":189}},{"Repetition":{"atom":240,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[111,200,214,235,236,241]}},{"Alternative":{"atoms":[0,242]}}],"root":243},"bindings":[]}},"preprocess":{},"tables":{},"lint":{"order_warnings":["rule cen_cenelec.publisher: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.publisher: branches 1 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.publisher: branches 2 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.date: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.adopted_org_prefix: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.any_noln_char: branches 1 and 2 are order-dependent (first set not statically known)","rule cen_cenelec.fragment_identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"EVS-EN 18216:2026","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN ISO 9001:2015/A1:2024","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS EN 196-1:2016","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS 921:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-TS 1:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-TR 1:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-ISO 9001:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-IEC 62368-1:2020","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 1993-1-1:2005+NA:2010","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 1993-1-1:2005/NA","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 50581:2012+COR:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 50581:2012+AC:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 71-1:2011 AMD1:2014","expect":{}},{"entry":"identifier","kind":"accept","input":"prEVS-EN 100:2026","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 18216:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN ISO 9001:2015","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"CEN/CLC TR 17161:2019","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 196-1:2016+A1","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"CEN/CLC/ETSI/TR 101551:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326-2:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326-2 V2.2.1","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326 V2.2.1:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"reject","input":"nonsense","expect":{}}],"docs":{},"source":"# The EVS national identifier: the national prefix (\"EVS\" / \"prEVS\") over a\n# CEN/CENELEC adoption, an ISO/IEC adoption, or a plain Estonian standard —\n# plus the EVS-list supplements (national annex, corrigendum, AMD amendment)\n# and the language code. The CEN spine is IMPORTED via `use` (TODO 11/C6\n# imports): rules are namespaced cen_cenelec.* while captures keep their\n# contract names.\n\nuse cen_cenelec\n\ngrammar PubidEvs version \"0.3.0\" {\n identifier = [draft_prefix] \"EVS\" evs_separator ((cen_cenelec.identifier) as adopted / (evs_intl) as intl / (evs_plain) as plain) [evs_amd] [evs_cor / evs_ac] [evs_na]\n\n draft_prefix = \"pr\" as draft_prefix\n evs_separator = (dash / space) as evs_separator\n\n # \"EVS-ISO 9001:2015\", \"EVS-IEC 62368-1:2020\" (+ their amendments)\n evs_intl = ((((\"ISO\" / \"IEC\") as intl_org) space (1*digit) as number) [(dash (1*digit) as part)] [(colon (4digit) as year)])\n # \"EVS 921:2019\", \"EVS-TS 1:2019\", \"EVS-TR 1:2019\"\n evs_plain = [((\"TS\" / \"TR\") as evs_type) space] (1*digit) as number [(colon (4digit) as year)]\n\n # \" AMD1:2014\" / \"+AMD1\" — the AMD amendment spelling; the separator is\n # semantic (list: \"+A full standard plus the amendment\", \"/A only amendment\")\n evs_amd = (((plus as supp_plus / slash as supp_slash / space as supp_space) (\"AMD\" as amd_kind)) (1*digit) as amd_number [(colon (4digit) as amd_year)]) as evs_amd\n # \"+COR:2015\" / \"/COR\" — the COR spelling (the CEN spine consumes +AC itself)\n evs_cor = (((plus as supp_plus / slash as supp_slash) (\"COR\" as cor_kind)) [(1*digit) as cor_number] [(colon (4digit) as cor_year)]) as evs_cor\n # \" AC:2015\" — the space-separated AC spelling\n evs_ac = ((space as supp_space) (\"AC\" as cor_kind) [(1*digit) as cor_number] [(colon (4digit) as cor_year)]) as evs_cor\n # \"+NA:2010\" / \"/NA\" — the national annex\n evs_na = (((plus as supp_plus / slash as supp_slash) \"NA\") [(colon (4digit) as na_year)]) as na\n # The trailing language code (\" et\" / \" en\" / \" et-en\") is extracted by\n # the parse wrapper (Pubid::Evs.parse) BEFORE the grammar runs — the\n # CEN adopted_string is greedy over plain text and would swallow it.\n\n digit = %x30-39\n dash = \"-\"\n space = \" \"\n plus = \"+\"\n slash = \"/\"\n colon = \":\"\n\n entry identifier: identifier\n\n test {\n accept \"EVS-EN 18216:2026\"\n accept \"EVS-EN ISO 9001:2015/A1:2024\"\n accept \"EVS EN 196-1:2016\"\n accept \"EVS 921:2019\"\n accept \"EVS-TS 1:2019\"\n accept \"EVS-TR 1:2019\"\n accept \"EVS-ISO 9001:2015\"\n accept \"EVS-IEC 62368-1:2020\"\n accept \"EVS-EN 1993-1-1:2005+NA:2010\"\n accept \"EVS-EN 1993-1-1:2005/NA\"\n accept \"EVS-EN 50581:2012+COR:2015\"\n accept \"EVS-EN 50581:2012+AC:2015\"\n accept \"EVS-EN 71-1:2011 AMD1:2014\"\n accept \"prEVS-EN 100:2026\"\n reject \"nonsense\"\n }\n}\n","source_hash":"0b4cb52e9c6ec1beadb59a7d52f152c817f70bd67cc5e44194419cb536b679fc","compiler_version":"1.3.93","checksum":"sha256:f3954ca983e4bf132f0a978e8ddf9f80e9dfd2a862841380387eae40a7c7fcc1"}
|
|
1
|
+
{"bindings":null,"version":"0.3.0","grammar":"PubidEvs","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":2}},{"Str":{"pattern":"pr"}},{"Named":{"name":"draft_prefix","atom":1}},{"Repetition":{"atom":0,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"EVS"}},{"Entity":{"atom":9}},{"Str":{"pattern":"-"}},{"Str":{"pattern":" "}},{"Alternative":{"atoms":[6,7]}},{"Named":{"name":"evs_separator","atom":8}},{"Entity":{"atom":248}},{"Entity":{"atom":113}},{"Entity":{"atom":16}},{"Str":{"pattern":"FprEN"}},{"Str":{"pattern":"prEN"}},{"Alternative":{"atoms":[13,14]}},{"Named":{"name":"type_with_stage","atom":15}},{"Entity":{"atom":46}},{"Str":{"pattern":"CWA"}},{"Str":{"pattern":"HD"}},{"Str":{"pattern":"ES"}},{"Str":{"pattern":"CR"}},{"Str":{"pattern":"ENV"}},{"Alternative":{"atoms":[18,19,20,21,22]}},{"Named":{"name":"publisher","atom":23}},{"Str":{"pattern":"EN"}},{"Str":{"pattern":"CEN"}},{"Alternative":{"atoms":[25,26]}},{"Named":{"name":"publisher","atom":27}},{"Entity":{"atom":38}},{"Entity":{"atom":36}},{"Str":{"pattern":"/"}},{"Str":{"pattern":"CLC"}},{"Str":{"pattern":"ETSI"}},{"Alternative":{"atoms":[32,33]}},{"Named":{"name":"copublisher","atom":34}},{"Sequence":{"atoms":[31,35]}},{"Repetition":{"atom":30,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"copublishers","atom":37}},{"Repetition":{"atom":29,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[28,39]}},{"Str":{"pattern":"CLC"}},{"Named":{"name":"publisher","atom":41}},{"Entity":{"atom":38}},{"Repetition":{"atom":43,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[42,44]}},{"Alternative":{"atoms":[24,40,45]}},{"Alternative":{"atoms":[12,17]}},{"Str":{"pattern":" "}},{"Entity":{"atom":58}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":50,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":" "}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":53,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[52,54]}},{"Repetition":{"atom":55,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[51,56]}},{"Named":{"name":"number","atom":57}},{"Entity":{"atom":69}},{"Entity":{"atom":67}},{"Str":{"pattern":"-"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Str":{"pattern":"-"}},{"Alternative":{"atoms":[62,63]}},{"Repetition":{"atom":64,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":65}},{"Sequence":{"atoms":[61,66]}},{"Repetition":{"atom":60,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"parts","atom":68}},{"Str":{"pattern":" "}},{"Str":{"pattern":"AMD"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":72,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":73}},{"Str":{"pattern":" "}},{"Str":{"pattern":"FRAG"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":77,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":78}},{"Sequence":{"atoms":[47,48,49,59,70,71,74,75,76,79]}},{"Entity":{"atom":16}},{"Entity":{"atom":46}},{"Alternative":{"atoms":[81,82]}},{"Str":{"pattern":" "}},{"Entity":{"atom":58}},{"Entity":{"atom":69}},{"Entity":{"atom":92}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":89,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":90}},{"Sequence":{"atoms":[88,91]}},{"Repetition":{"atom":87,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"+"}},{"Str":{"pattern":"/"}},{"Alternative":{"atoms":[94,95]}},{"Str":{"pattern":"A"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":98,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":99}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":102,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amendment_year","atom":103}},{"Sequence":{"atoms":[101,104]}},{"Repetition":{"atom":105,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Str":{"pattern":"FRAG"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":109,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":110}},{"Sequence":{"atoms":[83,84,85,86,93,96,97,100,106,107,108,111]}},{"Alternative":{"atoms":[80,112]}},{"Entity":{"atom":16}},{"Entity":{"atom":46}},{"Alternative":{"atoms":[114,115]}},{"Entity":{"atom":118}},{"Str":{"pattern":" "}},{"Entity":{"atom":202}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Str":{"pattern":"CISPR"}},{"Alternative":{"atoms":[120,121,122]}},{"Entity":{"atom":186}},{"Entity":{"atom":141}},{"Str":{"pattern":"+"}},{"Named":{"name":"amd_sep_plus","atom":126}},{"Str":{"pattern":"/"}},{"Named":{"name":"amd_sep_slash","atom":128}},{"Alternative":{"atoms":[127,129]}},{"Str":{"pattern":"A"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":132,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":133}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":136,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":137}},{"Sequence":{"atoms":[135,138]}},{"Repetition":{"atom":139,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[130,131,134,140]}},{"Entity":{"atom":184}},{"Str":{"pattern":"+"}},{"Named":{"name":"amd_sep_plus","atom":143}},{"Str":{"pattern":"/"}},{"Named":{"name":"amd_sep_slash","atom":145}},{"Alternative":{"atoms":[144,146]}},{"Str":{"pattern":"AC"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":150,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[149,151]}},{"Named":{"name":"cor_number","atom":152}},{"Repetition":{"atom":153,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":176}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":157,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":158}},{"Str":{"pattern":"-"}},{"Entity":{"atom":175}},{"Str":{"pattern":"01"}},{"Str":{"pattern":"02"}},{"Str":{"pattern":"03"}},{"Str":{"pattern":"04"}},{"Str":{"pattern":"05"}},{"Str":{"pattern":"06"}},{"Str":{"pattern":"07"}},{"Str":{"pattern":"08"}},{"Str":{"pattern":"09"}},{"Str":{"pattern":"10"}},{"Str":{"pattern":"11"}},{"Str":{"pattern":"12"}},{"Alternative":{"atoms":[162,163,164,165,166,167,168,169,170,171,172,173]}},{"Named":{"name":"month","atom":174}},{"Sequence":{"atoms":[156,159,160,161]}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":178,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":179}},{"Sequence":{"atoms":[177,180]}},{"Alternative":{"atoms":[155,181]}},{"Repetition":{"atom":182,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[147,148,154,183]}},{"Alternative":{"atoms":[125,142]}},{"Named":{"name":"supplement","atom":185}},{"Lookahead":{"atom":124,"positive":false}},{"Entity":{"atom":194}},{"Str":{"pattern":" "}},{"Str":{"pattern":"ED"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":191,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"edition","atom":192}},{"Sequence":{"atoms":[189,190,193]}},{"Lookahead":{"atom":188,"positive":false}},{"Re":{"pattern":"[\\x01-\\x09]"}},{"Re":{"pattern":"[\\x0b-\\u{10ffff}]"}},{"Alternative":{"atoms":[196,197]}},{"Sequence":{"atoms":[187,195,198]}},{"Repetition":{"atom":199,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[123,200]}},{"Named":{"name":"adopted_string","atom":201}},{"Sequence":{"atoms":[117,119]}},{"Repetition":{"atom":203,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":118}},{"Entity":{"atom":212}},{"Str":{"pattern":"Guide"}},{"Str":{"pattern":"GUIDE"}},{"Str":{"pattern":"TR"}},{"Str":{"pattern":"TS"}},{"Alternative":{"atoms":[207,208,209,210]}},{"Named":{"name":"type","atom":211}},{"Sequence":{"atoms":[205,206]}},{"Entity":{"atom":215}},{"Str":{"pattern":"/"}},{"Entity":{"atom":212}},{"Sequence":{"atoms":[214,216]}},{"Alternative":{"atoms":[213,217]}},{"Repetition":{"atom":218,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":118}},{"Entity":{"atom":58}},{"Entity":{"atom":69}},{"Entity":{"atom":235}},{"Str":{"pattern":" "}},{"Str":{"pattern":"V"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":226,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":229,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":232,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[224,225,227,228,230,231,233]}},{"Named":{"name":"version","atom":234}},{"Repetition":{"atom":223,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":92}},{"Repetition":{"atom":237,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[220,221,222,236,238]}},{"Repetition":{"atom":239,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":244}},{"Entity":{"atom":186}},{"Repetition":{"atom":242,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"supplements","atom":243}},{"Entity":{"atom":194}},{"Repetition":{"atom":245,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[116,204,219,240,241,246]}},{"Alternative":{"atoms":[11,247]}},{"Named":{"name":"adopted","atom":10}},{"Entity":{"atom":272}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Alternative":{"atoms":[251,252]}},{"Named":{"name":"intl_org","atom":253}},{"Str":{"pattern":" "}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":256,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":257}},{"Sequence":{"atoms":[254,255,258]}},{"Str":{"pattern":"-"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":261,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":262}},{"Sequence":{"atoms":[260,263]}},{"Repetition":{"atom":264,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":267,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":268}},{"Sequence":{"atoms":[266,269]}},{"Repetition":{"atom":270,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[259,265,271]}},{"Named":{"name":"intl","atom":250}},{"Entity":{"atom":291}},{"Str":{"pattern":"TS"}},{"Str":{"pattern":"TR"}},{"Alternative":{"atoms":[275,276]}},{"Named":{"name":"evs_type","atom":277}},{"Str":{"pattern":" "}},{"Sequence":{"atoms":[278,279]}},{"Repetition":{"atom":280,"min":0,"max":1,"tag":"Maybe"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":282,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":283}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":286,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":287}},{"Sequence":{"atoms":[285,288]}},{"Repetition":{"atom":289,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[281,284,290]}},{"Named":{"name":"plain","atom":274}},{"Alternative":{"atoms":[249,273,292]}},{"Entity":{"atom":315}},{"Str":{"pattern":"+"}},{"Named":{"name":"supp_plus","atom":295}},{"Str":{"pattern":"/"}},{"Named":{"name":"supp_slash","atom":297}},{"Str":{"pattern":" "}},{"Named":{"name":"supp_space","atom":299}},{"Alternative":{"atoms":[296,298,300]}},{"Str":{"pattern":"AMD"}},{"Named":{"name":"amd_kind","atom":302}},{"Sequence":{"atoms":[301,303]}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":305,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":306}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":309,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":310}},{"Sequence":{"atoms":[308,311]}},{"Repetition":{"atom":312,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[304,307,313]}},{"Named":{"name":"evs_amd","atom":314}},{"Repetition":{"atom":294,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":337}},{"Str":{"pattern":"+"}},{"Named":{"name":"supp_plus","atom":318}},{"Str":{"pattern":"/"}},{"Named":{"name":"supp_slash","atom":320}},{"Alternative":{"atoms":[319,321]}},{"Str":{"pattern":"COR"}},{"Named":{"name":"cor_kind","atom":323}},{"Sequence":{"atoms":[322,324]}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":326,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"cor_number","atom":327}},{"Repetition":{"atom":328,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":331,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"cor_year","atom":332}},{"Sequence":{"atoms":[330,333]}},{"Repetition":{"atom":334,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[325,329,335]}},{"Named":{"name":"evs_cor","atom":336}},{"Entity":{"atom":354}},{"Str":{"pattern":" "}},{"Named":{"name":"supp_space","atom":339}},{"Str":{"pattern":"AC"}},{"Named":{"name":"cor_kind","atom":341}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":343,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"cor_number","atom":344}},{"Repetition":{"atom":345,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":348,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"cor_year","atom":349}},{"Sequence":{"atoms":[347,350]}},{"Repetition":{"atom":351,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[340,342,346,352]}},{"Named":{"name":"evs_cor","atom":353}},{"Alternative":{"atoms":[317,338]}},{"Repetition":{"atom":355,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":372}},{"Str":{"pattern":"+"}},{"Named":{"name":"supp_plus","atom":358}},{"Str":{"pattern":"/"}},{"Named":{"name":"supp_slash","atom":360}},{"Alternative":{"atoms":[359,361]}},{"Str":{"pattern":"NA"}},{"Sequence":{"atoms":[362,363]}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":366,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"na_year","atom":367}},{"Sequence":{"atoms":[365,368]}},{"Repetition":{"atom":369,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[364,370]}},{"Named":{"name":"na","atom":371}},{"Repetition":{"atom":357,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[3,4,5,293,316,356,373]}}],"root":374},"bindings":[{"capture":"draft_prefix","path":"draft_prefix","type":"string","card":null,"preprocess":null},{"capture":"evs_separator","path":"evs_separator","type":"string","card":null,"preprocess":null},{"capture":"adopted","path":"adopted","type":"raw","card":null,"preprocess":null},{"capture":"intl","path":"intl","type":"raw","card":null,"preprocess":null},{"capture":"plain","path":"plain","type":"raw","card":null,"preprocess":null},{"capture":"evs_amd","path":"evs_amd","type":"raw","card":null,"preprocess":null},{"capture":"evs_cor","path":"evs_cor","type":"raw","card":null,"preprocess":null},{"capture":"na","path":"na","type":"raw","card":null,"preprocess":null}]},"cen_cenelec.identifier":{"root":"cen_cenelec.identifier","grammar":{"atoms":[{"Entity":{"atom":102}},{"Entity":{"atom":5}},{"Str":{"pattern":"FprEN"}},{"Str":{"pattern":"prEN"}},{"Alternative":{"atoms":[2,3]}},{"Named":{"name":"type_with_stage","atom":4}},{"Entity":{"atom":35}},{"Str":{"pattern":"CWA"}},{"Str":{"pattern":"HD"}},{"Str":{"pattern":"ES"}},{"Str":{"pattern":"CR"}},{"Str":{"pattern":"ENV"}},{"Alternative":{"atoms":[7,8,9,10,11]}},{"Named":{"name":"publisher","atom":12}},{"Str":{"pattern":"EN"}},{"Str":{"pattern":"CEN"}},{"Alternative":{"atoms":[14,15]}},{"Named":{"name":"publisher","atom":16}},{"Entity":{"atom":27}},{"Entity":{"atom":25}},{"Str":{"pattern":"/"}},{"Str":{"pattern":"CLC"}},{"Str":{"pattern":"ETSI"}},{"Alternative":{"atoms":[21,22]}},{"Named":{"name":"copublisher","atom":23}},{"Sequence":{"atoms":[20,24]}},{"Repetition":{"atom":19,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"copublishers","atom":26}},{"Repetition":{"atom":18,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[17,28]}},{"Str":{"pattern":"CLC"}},{"Named":{"name":"publisher","atom":30}},{"Entity":{"atom":27}},{"Repetition":{"atom":32,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[31,33]}},{"Alternative":{"atoms":[13,29,34]}},{"Alternative":{"atoms":[1,6]}},{"Str":{"pattern":" "}},{"Entity":{"atom":47}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":39,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":" "}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":42,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[41,43]}},{"Repetition":{"atom":44,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[40,45]}},{"Named":{"name":"number","atom":46}},{"Entity":{"atom":58}},{"Entity":{"atom":56}},{"Str":{"pattern":"-"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Str":{"pattern":"-"}},{"Alternative":{"atoms":[51,52]}},{"Repetition":{"atom":53,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":54}},{"Sequence":{"atoms":[50,55]}},{"Repetition":{"atom":49,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"parts","atom":57}},{"Str":{"pattern":" "}},{"Str":{"pattern":"AMD"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":61,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":62}},{"Str":{"pattern":" "}},{"Str":{"pattern":"FRAG"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":66,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":67}},{"Sequence":{"atoms":[36,37,38,48,59,60,63,64,65,68]}},{"Entity":{"atom":5}},{"Entity":{"atom":35}},{"Alternative":{"atoms":[70,71]}},{"Str":{"pattern":" "}},{"Entity":{"atom":47}},{"Entity":{"atom":58}},{"Entity":{"atom":81}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":78,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":79}},{"Sequence":{"atoms":[77,80]}},{"Repetition":{"atom":76,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"+"}},{"Str":{"pattern":"/"}},{"Alternative":{"atoms":[83,84]}},{"Str":{"pattern":"A"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":87,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amendment_number","atom":88}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":91,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amendment_year","atom":92}},{"Sequence":{"atoms":[90,93]}},{"Repetition":{"atom":94,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Str":{"pattern":"FRAG"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":98,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"fragment_number","atom":99}},{"Sequence":{"atoms":[72,73,74,75,82,85,86,89,95,96,97,100]}},{"Alternative":{"atoms":[69,101]}},{"Entity":{"atom":5}},{"Entity":{"atom":35}},{"Alternative":{"atoms":[103,104]}},{"Entity":{"atom":107}},{"Str":{"pattern":" "}},{"Entity":{"atom":191}},{"Str":{"pattern":"ISO"}},{"Str":{"pattern":"IEC"}},{"Str":{"pattern":"CISPR"}},{"Alternative":{"atoms":[109,110,111]}},{"Entity":{"atom":175}},{"Entity":{"atom":130}},{"Str":{"pattern":"+"}},{"Named":{"name":"amd_sep_plus","atom":115}},{"Str":{"pattern":"/"}},{"Named":{"name":"amd_sep_slash","atom":117}},{"Alternative":{"atoms":[116,118]}},{"Str":{"pattern":"A"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":121,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"amd_number","atom":122}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":125,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"amd_year","atom":126}},{"Sequence":{"atoms":[124,127]}},{"Repetition":{"atom":128,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[119,120,123,129]}},{"Entity":{"atom":173}},{"Str":{"pattern":"+"}},{"Named":{"name":"amd_sep_plus","atom":132}},{"Str":{"pattern":"/"}},{"Named":{"name":"amd_sep_slash","atom":134}},{"Alternative":{"atoms":[133,135]}},{"Str":{"pattern":"AC"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":139,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[138,140]}},{"Named":{"name":"cor_number","atom":141}},{"Repetition":{"atom":142,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":165}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":146,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":147}},{"Str":{"pattern":"-"}},{"Entity":{"atom":164}},{"Str":{"pattern":"01"}},{"Str":{"pattern":"02"}},{"Str":{"pattern":"03"}},{"Str":{"pattern":"04"}},{"Str":{"pattern":"05"}},{"Str":{"pattern":"06"}},{"Str":{"pattern":"07"}},{"Str":{"pattern":"08"}},{"Str":{"pattern":"09"}},{"Str":{"pattern":"10"}},{"Str":{"pattern":"11"}},{"Str":{"pattern":"12"}},{"Alternative":{"atoms":[151,152,153,154,155,156,157,158,159,160,161,162]}},{"Named":{"name":"month","atom":163}},{"Sequence":{"atoms":[145,148,149,150]}},{"Str":{"pattern":":"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":167,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":168}},{"Sequence":{"atoms":[166,169]}},{"Alternative":{"atoms":[144,170]}},{"Repetition":{"atom":171,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[136,137,143,172]}},{"Alternative":{"atoms":[114,131]}},{"Named":{"name":"supplement","atom":174}},{"Lookahead":{"atom":113,"positive":false}},{"Entity":{"atom":183}},{"Str":{"pattern":" "}},{"Str":{"pattern":"ED"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":180,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"edition","atom":181}},{"Sequence":{"atoms":[178,179,182]}},{"Lookahead":{"atom":177,"positive":false}},{"Re":{"pattern":"[\\x01-\\x09]"}},{"Re":{"pattern":"[\\x0b-\\u{10ffff}]"}},{"Alternative":{"atoms":[185,186]}},{"Sequence":{"atoms":[176,184,187]}},{"Repetition":{"atom":188,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[112,189]}},{"Named":{"name":"adopted_string","atom":190}},{"Sequence":{"atoms":[106,108]}},{"Repetition":{"atom":192,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":107}},{"Entity":{"atom":201}},{"Str":{"pattern":"Guide"}},{"Str":{"pattern":"GUIDE"}},{"Str":{"pattern":"TR"}},{"Str":{"pattern":"TS"}},{"Alternative":{"atoms":[196,197,198,199]}},{"Named":{"name":"type","atom":200}},{"Sequence":{"atoms":[194,195]}},{"Entity":{"atom":204}},{"Str":{"pattern":"/"}},{"Entity":{"atom":201}},{"Sequence":{"atoms":[203,205]}},{"Alternative":{"atoms":[202,206]}},{"Repetition":{"atom":207,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":107}},{"Entity":{"atom":47}},{"Entity":{"atom":58}},{"Entity":{"atom":224}},{"Str":{"pattern":" "}},{"Str":{"pattern":"V"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":215,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":218,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":221,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[213,214,216,217,219,220,222]}},{"Named":{"name":"version","atom":223}},{"Repetition":{"atom":212,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":81}},{"Repetition":{"atom":226,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[209,210,211,225,227]}},{"Repetition":{"atom":228,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":233}},{"Entity":{"atom":175}},{"Repetition":{"atom":231,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"supplements","atom":232}},{"Entity":{"atom":183}},{"Repetition":{"atom":234,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[105,193,208,229,230,235]}},{"Alternative":{"atoms":[0,236]}}],"root":237},"bindings":[{"capture":"publisher","path":"publisher","type":"string","card":null,"preprocess":null},{"capture":"copublisher","path":"copublishers[].copublisher","type":"string","card":null,"preprocess":null},{"capture":"type_with_stage","path":"type_with_stage","type":"string","card":null,"preprocess":null},{"capture":"type","path":"type","type":"string","card":null,"preprocess":null},{"capture":"number","path":"number","type":"string","card":null,"preprocess":null},{"capture":"version","path":"version","type":"string","card":null,"preprocess":null},{"capture":"part","path":"parts[].part","type":"string","card":null,"preprocess":null},{"capture":"year","path":"year","type":"string","card":null,"preprocess":null},{"capture":"adopted_string","path":"adopted_string","type":"string","card":null,"preprocess":null},{"capture":"edition","path":"edition","type":"string","card":null,"preprocess":null},{"capture":"amendment_number","path":"amendment_number","type":"string","card":null,"preprocess":null},{"capture":"amendment_year","path":"amendment_year","type":"string","card":null,"preprocess":null},{"capture":"fragment_number","path":"fragment_number","type":"string","card":null,"preprocess":null},{"capture":"supplement","path":"supplements[].supplement","type":"raw","card":null,"preprocess":null}]}},"preprocess":{},"tables":{},"lint":{"order_warnings":["rule cen_cenelec.publisher: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.publisher: branches 1 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.publisher: branches 2 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.date: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.fragment_identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)","rule cen_cenelec.identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"EVS-EN 18216:2026","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN ISO 9001:2015/A1:2024","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS EN 196-1:2016","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS 921:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-TS 1:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-TR 1:2019","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-ISO 9001:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-IEC 62368-1:2020","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 1993-1-1:2005+NA:2010","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 1993-1-1:2005/NA","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 50581:2012+COR:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 50581:2012+AC:2015","expect":{}},{"entry":"identifier","kind":"accept","input":"EVS-EN 71-1:2011 AMD1:2014","expect":{}},{"entry":"identifier","kind":"accept","input":"prEVS-EN 100:2026","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 18216:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN ISO 9001:2015","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"CEN/CLC TR 17161:2019","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 196-1:2016+A1","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"CEN/CLC/ETSI/TR 101551:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326-2:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326-2 V2.2.1","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302 326 V2.2.1:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"accept","input":"EN 302:2026","expect":{}},{"entry":"cen_cenelec.identifier","kind":"reject","input":"nonsense","expect":{}}],"docs":{},"source":"# The EVS national identifier: the national prefix (\"EVS\" / \"prEVS\") over a\n# CEN/CENELEC adoption, an ISO/IEC adoption, or a plain Estonian standard —\n# plus the EVS-list supplements (national annex, corrigendum, AMD amendment)\n# and the language code. The CEN spine is IMPORTED via `use` (TODO 11/C6\n# imports): rules are namespaced cen_cenelec.* while captures keep their\n# contract names.\n#\n# Edition 2: every reference inside a captured body is inlined to raw\n# terms (a rule reference materializes as a named node in the edition-2\n# tree, so only a raw capture binds a scalar span). The branch wrappers\n# (adopted, intl, plain) and the supplement wrappers (evs_amd, evs_cor,\n# na) keep the v1 tree shape and the bindings name the scalar leaves.\n\nuse cen_cenelec\n\ngrammar PubidEvs version \"0.3.0\" edition 2 {\n identifier = {\n [draft_prefix] \"EVS\" evs_separator\n (\n (cen_cenelec.identifier) as adopted\n / (evs_intl) as intl\n / (evs_plain) as plain\n )\n [evs_amd]\n [evs_cor / evs_ac]\n [evs_na]\n }\n\n draft_prefix = \"pr\" as draft_prefix\n evs_separator = (\"-\" / \" \") as evs_separator\n\n # \"EVS-ISO 9001:2015\", \"EVS-IEC 62368-1:2020\" (+ their amendments)\n evs_intl = {\n (\n (((\"ISO\" / \"IEC\") as intl_org) \" \" (1*%x30-39) as number)\n [(\"-\" (1*%x30-39) as part)]\n [(\":\" (4*4%x30-39) as year)]\n )\n }\n # \"EVS 921:2019\", \"EVS-TS 1:2019\", \"EVS-TR 1:2019\"\n evs_plain = {\n ([((\"TS\" / \"TR\") as evs_type) \" \"]) (1*%x30-39) as number [(\":\" (4*4%x30-39) as year)]\n }\n\n # \" AMD1:2014\" / \"+AMD1\" — the AMD amendment spelling; the separator is\n # semantic (list: \"+A full standard plus the amendment\", \"/A only amendment\")\n evs_amd = {\n (\n ((\"+\" as supp_plus / \"/\" as supp_slash / \" \" as supp_space) (\"AMD\" as amd_kind))\n (1*%x30-39) as amd_number\n [(\":\" (4*4%x30-39) as amd_year)]\n ) as evs_amd\n }\n # \"+COR:2015\" / \"/COR\" — the COR spelling (the CEN spine consumes +AC itself)\n evs_cor = {\n (\n ((\"+\" as supp_plus / \"/\" as supp_slash) (\"COR\" as cor_kind))\n [(1*%x30-39) as cor_number]\n [(\":\" (4*4%x30-39) as cor_year)]\n ) as evs_cor\n }\n # \" AC:2015\" — the space-separated AC spelling\n evs_ac = {\n (\n (\" \" as supp_space) (\"AC\" as cor_kind)\n [(1*%x30-39) as cor_number]\n [(\":\" (4*4%x30-39) as cor_year)]\n ) as evs_cor\n }\n # \"+NA:2010\" / \"/NA\" — the national annex\n evs_na = {\n (\n ((\"+\" as supp_plus / \"/\" as supp_slash) \"NA\")\n [(\":\" (4*4%x30-39) as na_year)]\n ) as na\n }\n # The trailing language code (\" et\" / \" en\" / \" et-en\") is extracted by\n # the parse wrapper (Pubid::Evs.parse) BEFORE the grammar runs — the\n # CEN adopted_string is greedy over plain text and would swallow it.\n\n entry identifier: identifier\n\n test {\n accept \"EVS-EN 18216:2026\"\n accept \"EVS-EN ISO 9001:2015/A1:2024\"\n accept \"EVS EN 196-1:2016\"\n accept \"EVS 921:2019\"\n accept \"EVS-TS 1:2019\"\n accept \"EVS-TR 1:2019\"\n accept \"EVS-ISO 9001:2015\"\n accept \"EVS-IEC 62368-1:2020\"\n accept \"EVS-EN 1993-1-1:2005+NA:2010\"\n accept \"EVS-EN 1993-1-1:2005/NA\"\n accept \"EVS-EN 50581:2012+COR:2015\"\n accept \"EVS-EN 50581:2012+AC:2015\"\n accept \"EVS-EN 71-1:2011 AMD1:2014\"\n accept \"prEVS-EN 100:2026\"\n reject \"nonsense\"\n }\n\n bindings identifier {\n # The builder dispatches on the branch and supplement wrappers and\n # reads every leaf from inside them (evs/builder.rb: data[:adopted] is\n # rebuilt by the CEN builder, data[:intl]/data[:plain]/data[:na] are\n # read member-wise) — so all six wrappers bind uncast, the v1 nested\n # shape. Only the two flat spine fields the builder reads directly stay\n # scalar; the branch leaves are nested-only and bind no flat copies.\n draft_prefix -> draft_prefix (string)\n evs_separator -> evs_separator (string)\n adopted -> adopted (raw)\n intl -> intl (raw)\n plain -> plain (raw)\n evs_amd -> evs_amd (raw)\n evs_cor -> evs_cor (raw)\n na -> na (raw)\n }\n}\n","source_hash":"cbedc547a6684aed1abfced213e77a07aed30058fabd037e289b67ac3fcb635f","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:077f203805c1a343920cd73aaa5d9e3a2274a6282b08add01a5ff2221e15cf73","checksum":"sha256:be2af3dc4a3d2d40e31b803d8ef75ed0cffb9ce7fee2797021983f976bf866db"}
|
package/vendor/parg/gb.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.1.0","grammar":"PubidGb","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":23}},{"Str":{"pattern":"T/"}},{"Entity":{"atom":5}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Alternative":{"atoms":[3,4]}},{"Repetition":{"atom":2,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[1,6]}},{"Str":{"pattern":"GBn"}},{"Str":{"pattern":"/T"}},{"Str":{"pattern":"/Z"}},{"Alternative":{"atoms":[9,10]}},{"Repetition":{"atom":11,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[8,12]}},{"Entity":{"atom":15}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Repetition":{"atom":14,"min":1,"max":3,"tag":"Repetition"}},{"Str":{"pattern":"/T"}},{"Str":{"pattern":"/Z"}},{"Alternative":{"atoms":[17,18]}},{"Repetition":{"atom":19,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[16,20]}},{"Alternative":{"atoms":[7,13,21]}},{"Named":{"name":"publisher_code","atom":22}},{"Entity":{"atom":25}},{"Str":{"pattern":" "}},{"Entity":{"atom":27}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":26,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":28}},{"Str":{"pattern":"."}},{"Entity":{"atom":27}},{"Repetition":{"atom":31,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":32}},{"Sequence":{"atoms":[30,33]}},{"Repetition":{"atom":34,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":39}},{"Str":{"pattern":"-"}},{"Str":{"pattern":"—"}},{"Alternative":{"atoms":[37,38]}},{"Entity":{"atom":27}},{"Repetition":{"atom":
|
|
1
|
+
{"bindings":null,"version":"0.1.0","grammar":"PubidGb","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":23}},{"Str":{"pattern":"T/"}},{"Entity":{"atom":5}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Alternative":{"atoms":[3,4]}},{"Repetition":{"atom":2,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[1,6]}},{"Str":{"pattern":"GBn"}},{"Str":{"pattern":"/T"}},{"Str":{"pattern":"/Z"}},{"Alternative":{"atoms":[9,10]}},{"Repetition":{"atom":11,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[8,12]}},{"Entity":{"atom":15}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Repetition":{"atom":14,"min":1,"max":3,"tag":"Repetition"}},{"Str":{"pattern":"/T"}},{"Str":{"pattern":"/Z"}},{"Alternative":{"atoms":[17,18]}},{"Repetition":{"atom":19,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[16,20]}},{"Alternative":{"atoms":[7,13,21]}},{"Named":{"name":"publisher_code","atom":22}},{"Entity":{"atom":25}},{"Str":{"pattern":" "}},{"Entity":{"atom":27}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":26,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"number","atom":28}},{"Str":{"pattern":"."}},{"Entity":{"atom":27}},{"Repetition":{"atom":31,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"part","atom":32}},{"Sequence":{"atoms":[30,33]}},{"Repetition":{"atom":34,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":39}},{"Str":{"pattern":"-"}},{"Str":{"pattern":"—"}},{"Alternative":{"atoms":[37,38]}},{"Named":{"name":"dash","atom":36}},{"Entity":{"atom":27}},{"Repetition":{"atom":41,"min":4,"max":4,"tag":"Repetition"}},{"Named":{"name":"year","atom":42}},{"Sequence":{"atoms":[40,43]}},{"Repetition":{"atom":44,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" ("}},{"Entity":{"atom":48}},{"Str":{"pattern":"all parts"}},{"Named":{"name":"all_parts_text","atom":47}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[46,49,50]}},{"Repetition":{"atom":51,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[0,24,29,35,45,52]}}],"root":53},"bindings":[{"capture":"publisher_code","path":"publisher_code","type":"string","card":null,"preprocess":null},{"capture":"number","path":"number","type":"string","card":null,"preprocess":null},{"capture":"part","path":"part","type":"string","card":null,"preprocess":null},{"capture":"year","path":"year","type":"string","card":null,"preprocess":null}]}},"preprocess":{},"tables":{},"lint":{"order_warnings":[]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"GB/T 19001-2016","expect":{}},{"entry":"identifier","kind":"accept","input":"GB 4943","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}}],"docs":{},"source":"# Port of lib/pubid/gb/parser.rb — Chinese standard identifiers.\n# publisher_code order is load-bearing: the social-group form, then the\n# confidential GBn series (lowercase n is part of the code), then the\n# general 1-3-letter code. The year separator is ASCII dash or the\n# Chinese typographic em-dash.\n\ngrammar PubidGb version \"0.1.0\" edition 2 {\n publisher_code = ((\"T/\" 1*upper_digit) / (\"GBn\" [\"/T\" / \"/Z\"]) / (1*3upper [\"/T\" / \"/Z\"])) as publisher_code\n identifier = publisher_code space (1*digit) as number [(\".\" (1*digit) as part)] [(dash (4digit) as year)] [(\" (\" all_parts_text \")\")]\n all_parts_text = \"all parts\"\n upper = %x41-5A\n upper_digit = %x41-5A / %x30-39\n dash = \"-\" / \"—\"\n space = \" \"\n digit = %x30-39\n entry identifier: identifier\n\n # Typed model bindings: every bound capture lands on the\n # consumer model's field of the same name.\n bindings identifier {\n publisher_code -> publisher_code (string)\n number -> number (string)\n part -> part (string)\n year -> year (string)\n }\n\n\n test {\n accept \"GB/T 19001-2016\"\n accept \"GB 4943\"\n reject \"nonsense\"\n }\n}\n","source_hash":"00d08eb59a1c1f6c71209c61abd5d00b41b49ff73d387fcc5674068f679f9d1a","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:4f5f8a04041ec8a04f9e16834f79563d3fdd0afdc35102786f46d8f0bf4b493a","checksum":"sha256:371023ab729416993e6d62da52b8885222307e41f05e99fe1648a567087abc84"}
|
package/vendor/parg/gost.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.1.0","grammar":"PubidGost","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":7}},{"Str":{"pattern":"GOST"}},{"Str":{"pattern":"ГОСТ"}},{"Alternative":{"atoms":[1,2]}},{"Named":{"name":"gost_word","atom":3}},{"Entity":{"atom":6}},{"Str":{"pattern":" "}},{"Sequence":{"atoms":[4,5]}},{"Entity":{"atom":14}},{"Str":{"pattern":"R"}},{"Str":{"pattern":"Р"}},{"Alternative":{"atoms":[9,10]}},{"Named":{"name":"scope_r","atom":11}},{"Entity":{"atom":6}},{"Sequence":{"atoms":[12,13]}},{"Repetition":{"atom":8,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":33}},{"Entity":{"atom":23}},{"Re":{"pattern":"[\\u0410-\\u042f]"}},{"Re":{"pattern":"[\\u0430-\\u044f]"}},{"Re":{"pattern":"[/]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Alternative":{"atoms":[18,19,20,21,22]}},{"Repetition":{"atom":17,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":6}},{"Entity":{"atom":23}},{"Repetition":{"atom":26,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[25,27]}},{"Repetition":{"atom":28,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[24,29]}},{"Named":{"name":"prefix_text","atom":30}},{"Entity":{"atom":6}},{"Sequence":{"atoms":[31,32]}},{"Repetition":{"atom":16,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":
|
|
1
|
+
{"bindings":null,"version":"0.1.0","grammar":"PubidGost","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":7}},{"Str":{"pattern":"GOST"}},{"Str":{"pattern":"ГОСТ"}},{"Alternative":{"atoms":[1,2]}},{"Named":{"name":"gost_word","atom":3}},{"Entity":{"atom":6}},{"Str":{"pattern":" "}},{"Sequence":{"atoms":[4,5]}},{"Entity":{"atom":14}},{"Str":{"pattern":"R"}},{"Str":{"pattern":"Р"}},{"Alternative":{"atoms":[9,10]}},{"Named":{"name":"scope_r","atom":11}},{"Entity":{"atom":6}},{"Sequence":{"atoms":[12,13]}},{"Repetition":{"atom":8,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":33}},{"Entity":{"atom":23}},{"Re":{"pattern":"[\\u0410-\\u042f]"}},{"Re":{"pattern":"[\\u0430-\\u044f]"}},{"Re":{"pattern":"[/]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Alternative":{"atoms":[18,19,20,21,22]}},{"Repetition":{"atom":17,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":6}},{"Entity":{"atom":23}},{"Repetition":{"atom":26,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[25,27]}},{"Repetition":{"atom":28,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[24,29]}},{"Named":{"name":"prefix_text","atom":30}},{"Entity":{"atom":6}},{"Sequence":{"atoms":[31,32]}},{"Repetition":{"atom":16,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":51}},{"Entity":{"atom":37}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":36,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":"."}},{"Str":{"pattern":"-"}},{"Str":{"pattern":"—"}},{"Str":{"pattern":"–"}},{"Alternative":{"atoms":[39,40,41,42]}},{"Entity":{"atom":6}},{"Repetition":{"atom":44,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":37}},{"Repetition":{"atom":46,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[43,45,47]}},{"Repetition":{"atom":48,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[38,49]}},{"Named":{"name":"raw","atom":50}},{"Entity":{"atom":65}},{"Entity":{"atom":6}},{"Repetition":{"atom":53,"min":0,"max":1,"tag":"Maybe"}},{"Repetition":{"atom":54,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":57}},{"Str":{"pattern":"/"}},{"Named":{"name":"slash","atom":56}},{"Entity":{"atom":62}},{"Re":{"pattern":"[\\x01-\\x09]"}},{"Re":{"pattern":"[\\x0b-\\u{10ffff}]"}},{"Alternative":{"atoms":[60,61]}},{"Repetition":{"atom":59,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"adopted_raw","atom":63}},{"Sequence":{"atoms":[55,58,64]}},{"Repetition":{"atom":52,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":79}},{"Entity":{"atom":6}},{"Repetition":{"atom":68,"min":0,"max":1,"tag":"Maybe"}},{"Repetition":{"atom":69,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"("}},{"Entity":{"atom":75}},{"Re":{"pattern":"[\\x01-\\x28]"}},{"Re":{"pattern":"[\\x2a-\\u{10ffff}]"}},{"Alternative":{"atoms":[73,74]}},{"Repetition":{"atom":72,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"adopted_reference_raw","atom":76}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[70,71,77,78]}},{"Repetition":{"atom":67,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[0,15,34,35,66,80]}}],"root":81},"bindings":[{"capture":"gost_word","path":"gost_word","type":"string","card":null,"preprocess":null},{"capture":"scope_r","path":"scope_r","type":"string","card":null,"preprocess":null},{"capture":"prefix_text","path":"prefix_text","type":"string","card":null,"preprocess":null},{"capture":"raw","path":"raw","type":"string","card":null,"preprocess":null},{"capture":"adopted_raw","path":"adopted_raw","type":"string","card":null,"preprocess":null},{"capture":"adopted_reference_raw","path":"adopted_reference_raw","type":"string","card":null,"preprocess":null}]}},"preprocess":{},"tables":{},"lint":{"order_warnings":["rule year_sep_core: branches 2 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule any_noln_char: branches 1 and 2 are order-dependent (first set not statically known)","rule no_rparen_char: branches 1 and 2 are order-dependent (first set not statically known)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"GOST 12.0.004","expect":{}},{"entry":"identifier","kind":"accept","input":"GOST R 8.568","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}}],"docs":{},"source":"# Port of lib/pubid/gost/parser.rb — GOST identifiers in Latin and\n# Cyrillic: ГОСТ [Р|R] [copublisher/subtype] <raw>[/adopted|(reference)].\n# prefix_text and raw are captured verbatim; the builder splits them.\n# The Cyrillic character class uses codepoint ranges (%x0410-042F\n# = А-Я, %x0430-044F = а-я), faithful to the source class.\n\ngrammar PubidGost version \"0.1.0\" edition 2 {\n gost_word = (\"GOST\" / \"ГОСТ\") as gost_word space\n scope_r = (\"R\" / \"Р\") as scope_r space\n prefix_char = %x0410-042F / %x0430-044F / %x2F / %x41-5A / %x61-7A\n prefix_text = (1*prefix_char *(space 1*prefix_char)) as prefix_text space\n raw_body = (1*digit *((\".\" / \"-\" / \"—\" / \"–\") [space] 1*digit)) as raw\n year_sep_core = dash / \"—\" / \"–\"\n adopted_part = [[space]] slash (1*any_noln_char) as adopted_raw\n adopted_reference_part = [[space]] \"(\" (1*no_rparen_char) as adopted_reference_raw \")\"\n identifier = gost_word [scope_r] [prefix_text] raw_body [adopted_part] [adopted_reference_part]\n any_noln_char = %x01-09 / %x0B-10FFFF\n no_rparen_char = %x01-28 / %x2A-10FFFF\n digit = %x30-39\n dot = \".\"\n dash = \"-\"\n slash = \"/\"\n space = \" \"\n entry identifier: identifier\n\n bindings identifier {\n gost_word -> gost_word (string)\n scope_r -> scope_r (string)\n prefix_text -> prefix_text (string)\n raw -> raw (string)\n adopted_raw -> adopted_raw (string)\n adopted_reference_raw -> adopted_reference_raw (string)\n }\n\n\n test {\n accept \"GOST 12.0.004\"\n accept \"GOST R 8.568\"\n reject \"nonsense\"\n }\n}\n","source_hash":"d067829f030f27bd387b4c40859702a42c66f236bef5db7b276162982175c3f4","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:0151bbd9bd75833e0441882da9e367162317450f01ef8c3ea49b5d0c6d989f01","checksum":"sha256:2b24ac83110227255f16794f7e2d0b5249d353f7a708300186d4d435377241d9"}
|
package/vendor/parg/iala.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.1.0","grammar":"PubidIala","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":100}},{"Entity":{"atom":3}},{"Str":{"pattern":"IALA "}},{"Repetition":{"atom":2,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":16}},{"Str":{"pattern":"GA"}},{"Str":{"pattern":"S"}},{"Str":{"pattern":"R"}},{"Str":{"pattern":"G"}},{"Str":{"pattern":"M"}},{"Str":{"pattern":"C"}},{"Str":{"pattern":"A"}},{"Str":{"pattern":"L"}},{"Str":{"pattern":"X"}},{"Str":{"pattern":"P"}},{"Alternative":{"atoms":[5,6,7,8,9,10,11,12,13,14]}},{"Named":{"name":"type_letter","atom":15}},{"Entity":{"atom":30}},{"Entity":{"atom":22}},{"Entity":{"atom":20}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":19,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"doc_number","atom":21}},{"Entity":{"atom":27}},{"Str":{"pattern":"."}},{"Entity":{"atom":20}},{"Repetition":{"atom":25,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[24,26]}},{"Repetition":{"atom":23,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"doc_number_dots","atom":28}},{"Sequence":{"atoms":[18,29]}},{"Entity":{"atom":39}},{"Entity":{"atom":33}},{"Str":{"pattern":"-"}},{"Entity":{"atom":20}},{"Repetition":{"atom":34,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"subpart_number","atom":35}},{"Sequence":{"atoms":[32,36]}},{"Repetition":{"atom":37,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"subpart","atom":38}},{"Repetition":{"atom":31,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[1,4,17,40]}},{"Named":{"name":"base","atom":41}},{"Entity":{"atom":44}},{"Str":{"pattern":" "}},{"Str":{"pattern":"Annex"}},{"Str":{"pattern":"ANNEX"}},{"Alternative":{"atoms":[45,46]}},{"Named":{"name":"annex_marker","atom":47}},{"Entity":{"atom":44}},{"Entity":{"atom":51}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Named":{"name":"annex_letter","atom":50}},{"Entity":{"atom":54}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Lookahead":{"atom":53,"positive":false}},{"Sequence":{"atoms":[49,52,55]}},{"Repetition":{"atom":56,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":74}},{"Entity":{"atom":44}},{"Str":{"pattern":"Ed"}},{"Entity":{"atom":44}},{"Entity":{"atom":72}},{"Entity":{"atom":20}},{"Repetition":{"atom":63,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":66}},{"Str":{"pattern":"."}},{"Entity":{"atom":20}},{"Repetition":{"atom":67,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[65,68]}},{"Repetition":{"atom":69,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[64,70]}},{"Named":{"name":"edition_value","atom":71}},{"Sequence":{"atoms":[59,60,61,62]}},{"Named":{"name":"edition","atom":73}},{"Entity":{"atom":81}},{"Entity":{"atom":77}},{"Str":{"pattern":":"}},{"Str":{"pattern":"ed"}},{"Entity":{"atom":72}},{"Sequence":{"atoms":[76,78,79]}},{"Named":{"name":"edition","atom":80}},{"Alternative":{"atoms":[58,75]}},{"Repetition":{"atom":82,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":98}},{"Entity":{"atom":44}},{"Repetition":{"atom":85,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"("}},{"Str":{"pattern":"E"}},{"Str":{"pattern":"F"}},{"Str":{"pattern":"S"}},{"Str":{"pattern":"C"}},{"Str":{"pattern":"A"}},{"Str":{"pattern":"R"}},{"Alternative":{"atoms":[88,89,90,91,92,93]}},{"Named":{"name":"language","atom":94}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[86,87,95,96]}},{"Named":{"name":"language_group","atom":97}},{"Repetition":{"atom":84,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[42,43,48,57,83,99]}},{"Entity":{"atom":3}},{"Entity":{"atom":107}},{"Entity":{"atom":16}},{"Entity":{"atom":30}},{"Entity":{"atom":39}},{"Repetition":{"atom":105,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[103,104,106]}},{"Entity":{"atom":74}},{"Entity":{"atom":81}},{"Alternative":{"atoms":[108,109]}},{"Repetition":{"atom":110,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":98}},{"Repetition":{"atom":112,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[101,102,111,113]}},{"Alternative":{"atoms":[0,114]}}],"root":115},"bindings":[]}},"preprocess":{},"tables":{},"lint":{"order_warnings":["rule identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"G1040","expect":{}},{"entry":"identifier","kind":"accept","input":"GA1040","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}}],"docs":{},"source":"# Port of lib/pubid/iala/parser.rb: [IALA ]<type><number>[.dots][-subs]\n# [ Ed X.Y | :edX.Y] [(L)], plus the Annex-to-base form. The annex\n# letter guard (!lower) keeps \"Ed 1\" from mis-capturing.\n\ngrammar PubidIala version \"0.1.0\" {\n type_letter = (\"GA\" / \"S\" / \"R\" / \"G\" / \"M\" / \"C\" / \"A\" / \"L\" / \"X\" / \"P\") as type_letter\n doc_number = (1*digit) as doc_number\n dotted_number = \".\" 1*digit\n number_with_dots = doc_number (*dotted_number) as doc_number_dots\n subpart = (1*(dash (1*digit) as subpart_number)) as subpart\n code = type_letter number_with_dots [subpart]\n edition_value = (1*digit *(dot 1*digit)) as edition_value\n edition_human = (space \"Ed\" space edition_value) as edition\n edition_compact = (colon \"ed\" edition_value) as edition\n language_group = ([space] \"(\" (\"E\" / \"F\" / \"S\" / \"C\" / \"A\" / \"R\") as language \")\") as language_group\n annex_identifier = ((publisher type_letter number_with_dots [subpart]) as base) space (\"Annex\" / \"ANNEX\") as annex_marker [(space upper as annex_letter !lower)] [edition_human / edition_compact] [language_group]\n identifier = annex_identifier / (publisher code [edition_human / edition_compact] [language_group])\n publisher = [\"IALA \"]\n upper = %x41-5A\n lower = %x61-7A\n digit = %x30-39\n dash = \"-\"\n colon = \":\"\n dot = \".\"\n space = \" \"\n entry identifier: identifier\n\n test {\n accept \"G1040\"\n accept \"GA1040\"\n reject \"nonsense\"\n }\n}\n","source_hash":"21d282f6ed3a1c0ac8a3a3240beed0cb4f0942f09f1e76be2103a2093b9453bd","compiler_version":"1.3.93","checksum":"sha256:69f6e8a2a70f9c9211fffc2833037eff92ae312cce7d5e45f69dd7e9f7832867"}
|
|
1
|
+
{"bindings":null,"version":"0.1.0","grammar":"PubidIala","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":102}},{"Entity":{"atom":3}},{"Str":{"pattern":"IALA "}},{"Repetition":{"atom":2,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":16}},{"Str":{"pattern":"GA"}},{"Str":{"pattern":"S"}},{"Str":{"pattern":"R"}},{"Str":{"pattern":"G"}},{"Str":{"pattern":"M"}},{"Str":{"pattern":"C"}},{"Str":{"pattern":"A"}},{"Str":{"pattern":"L"}},{"Str":{"pattern":"X"}},{"Str":{"pattern":"P"}},{"Alternative":{"atoms":[5,6,7,8,9,10,11,12,13,14]}},{"Named":{"name":"type_letter","atom":15}},{"Entity":{"atom":32}},{"Entity":{"atom":22}},{"Entity":{"atom":20}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Repetition":{"atom":19,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"doc_number","atom":21}},{"Entity":{"atom":29}},{"Entity":{"atom":25}},{"Str":{"pattern":"."}},{"Entity":{"atom":20}},{"Repetition":{"atom":26,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"dotted_segment","atom":27}},{"Sequence":{"atoms":[24,28]}},{"Repetition":{"atom":23,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"doc_number_dots","atom":30}},{"Sequence":{"atoms":[18,31]}},{"Entity":{"atom":42}},{"Entity":{"atom":40}},{"Entity":{"atom":36}},{"Str":{"pattern":"-"}},{"Entity":{"atom":20}},{"Repetition":{"atom":37,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"subpart_number","atom":38}},{"Sequence":{"atoms":[35,39]}},{"Repetition":{"atom":34,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"subpart","atom":41}},{"Repetition":{"atom":33,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[1,4,17,43]}},{"Named":{"name":"base","atom":44}},{"Entity":{"atom":47}},{"Str":{"pattern":" "}},{"Str":{"pattern":"Annex"}},{"Str":{"pattern":"ANNEX"}},{"Alternative":{"atoms":[48,49]}},{"Named":{"name":"annex_marker","atom":50}},{"Entity":{"atom":47}},{"Entity":{"atom":54}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Named":{"name":"annex_letter","atom":53}},{"Entity":{"atom":57}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Lookahead":{"atom":56,"positive":false}},{"Sequence":{"atoms":[52,55,58]}},{"Repetition":{"atom":59,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":76}},{"Entity":{"atom":47}},{"Str":{"pattern":"Ed"}},{"Entity":{"atom":47}},{"Entity":{"atom":74}},{"Entity":{"atom":20}},{"Repetition":{"atom":66,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":25}},{"Entity":{"atom":20}},{"Repetition":{"atom":69,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[68,70]}},{"Repetition":{"atom":71,"min":0,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[67,72]}},{"Named":{"name":"edition_value","atom":73}},{"Sequence":{"atoms":[62,63,64,65]}},{"Named":{"name":"edition","atom":75}},{"Entity":{"atom":83}},{"Entity":{"atom":79}},{"Str":{"pattern":":"}},{"Str":{"pattern":"ed"}},{"Entity":{"atom":74}},{"Sequence":{"atoms":[78,80,81]}},{"Named":{"name":"edition","atom":82}},{"Alternative":{"atoms":[61,77]}},{"Repetition":{"atom":84,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":100}},{"Entity":{"atom":47}},{"Repetition":{"atom":87,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"("}},{"Str":{"pattern":"E"}},{"Str":{"pattern":"F"}},{"Str":{"pattern":"S"}},{"Str":{"pattern":"C"}},{"Str":{"pattern":"A"}},{"Str":{"pattern":"R"}},{"Alternative":{"atoms":[90,91,92,93,94,95]}},{"Named":{"name":"language","atom":96}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[88,89,97,98]}},{"Named":{"name":"language_group","atom":99}},{"Repetition":{"atom":86,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[45,46,51,60,85,101]}},{"Entity":{"atom":117}},{"Entity":{"atom":3}},{"Entity":{"atom":110}},{"Entity":{"atom":16}},{"Entity":{"atom":32}},{"Entity":{"atom":42}},{"Repetition":{"atom":108,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[106,107,109]}},{"Entity":{"atom":76}},{"Entity":{"atom":83}},{"Alternative":{"atoms":[111,112]}},{"Repetition":{"atom":113,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":100}},{"Repetition":{"atom":115,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[104,105,114,116]}},{"Alternative":{"atoms":[0,103]}}],"root":118},"bindings":[{"capture":"type_letter","path":"type_letter","type":"string","card":null,"preprocess":null},{"capture":"doc_number","path":"doc_number","type":"string","card":null,"preprocess":null},{"capture":"dotted_segment","path":"doc_number_dots[].dotted_segment","type":"string","card":null,"preprocess":null},{"capture":"subpart_number","path":"subpart[].subpart_number","type":"string","card":null,"preprocess":null},{"capture":"edition_value","path":"edition_value","type":"string","card":null,"preprocess":null},{"capture":"language","path":"language","type":"string","card":null,"preprocess":null},{"capture":"annex_marker","path":"annex_marker","type":"string","card":null,"preprocess":null},{"capture":"annex_letter","path":"annex_letter","type":"string","card":null,"preprocess":null}]}},"preprocess":{},"tables":{},"lint":{"order_warnings":["rule identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"G1040","expect":{}},{"entry":"identifier","kind":"accept","input":"GA1040","expect":{}},{"entry":"identifier","kind":"accept","input":"IALA S1070 Ed 2.0","expect":{}},{"entry":"identifier","kind":"accept","input":"R1016:ed2.0(F)","expect":{}},{"entry":"identifier","kind":"accept","input":"C0103-1 Ed 3.0","expect":{}},{"entry":"identifier","kind":"accept","input":"IALA L2.1.11 Ed 2","expect":{}},{"entry":"identifier","kind":"accept","input":"IALA G1128 Annex A Ed 1.6","expect":{}},{"entry":"identifier","kind":"accept","input":"IALA G1045 Annex Ed 1","expect":{}},{"entry":"identifier","kind":"accept","input":"IALA A12-01 (E)","expect":{}},{"entry":"identifier","kind":"reject","input":"nonsense","expect":{}},{"entry":"identifier","kind":"example","input":"G1040","expect":{"type_letter":"G","doc_number":"1040"}},{"entry":"identifier","kind":"example","input":"GA01.01","expect":{"type_letter":"GA","doc_number":"01","doc_number_dots":[{"dotted_segment":"01"}]}},{"entry":"identifier","kind":"example","input":"C0103-1","expect":{"type_letter":"C","doc_number":"0103","subpart":[{"subpart_number":"1"}]}},{"entry":"identifier","kind":"example","input":"IALA S1070 Ed 2.0","expect":{"type_letter":"S","doc_number":"1070","edition_value":"2.0"}},{"entry":"identifier","kind":"example","input":"IALA G1128 Annex A Ed 1.6","expect":{"type_letter":"G","doc_number":"1128","annex_marker":"Annex","annex_letter":"A","edition_value":"1.6"}}],"docs":{},"source":"# Port of lib/pubid/iala/parser.rb: [IALA ]<type><number>[.dots][-subs]\n# [ Ed X.Y | :edX.Y] [(L)], plus the Annex-to-base form. The annex\n# letter guard (!lower) keeps \"Ed 1\" from mis-capturing.\n#\n# Edition-2 conversion with typed model bindings. Deviations from the\n# v1 tree:\n# - the dotted continuation and the dash subpart repeat capture-bearing\n# rule refs (the itu `parts` shape): a repetition over a capture-less\n# unit harvested as a bare span binds differently per engine, so the\n# bindings read the inner captures through the array paths\n# `doc_number_dots[].dotted_segment` and `subpart[].subpart_number`.\n# The dotted segment gains its own capture (`dotted_segment`); the\n# subpart keeps its `subpart_number` capture, hoisted out of the\n# inline repetition into a rule ref of its own.\n# - the annex base composite stays unbound. Every capture inside it\n# (type_letter, doc_number, …) is the only occurrence of its name on\n# the annex path, so the binding harvest hoists it to the top level:\n# the builder reads one flat map for the plain and the annex form\n# alike and dispatches on :annex_marker. edition_value and language\n# hoist out of their edition/language_group composites the same way.\n\ngrammar PubidIala version \"0.1.0\" edition 2 {\n type_letter = (\"GA\" / \"S\" / \"R\" / \"G\" / \"M\" / \"C\" / \"A\" / \"L\" / \"X\" / \"P\") as type_letter\n doc_number = (1*digit) as doc_number\n dotted_number = dot (1*digit) as dotted_segment\n number_with_dots = doc_number (*dotted_number) as doc_number_dots\n subpart_number = dash (1*digit) as subpart_number\n subpart = (1*subpart_number) as subpart\n code = type_letter number_with_dots [subpart]\n edition_value = (1*digit *(dot 1*digit)) as edition_value\n edition_human = (space \"Ed\" space edition_value) as edition\n edition_compact = (colon \"ed\" edition_value) as edition\n language_group = ([space] \"(\" (\"E\" / \"F\" / \"S\" / \"C\" / \"A\" / \"R\") as language \")\") as language_group\n annex_identifier = {\n ((publisher type_letter number_with_dots [subpart]) as base)\n space\n (\"Annex\" / \"ANNEX\") as annex_marker\n [ (space upper as annex_letter !lower) ]\n [edition_human / edition_compact]\n [language_group]\n }\n plain_identifier = {\n publisher code [edition_human / edition_compact] [language_group]\n }\n identifier = {\n annex_identifier\n / plain_identifier\n }\n publisher = [\"IALA \"]\n upper = %x41-5A\n lower = %x61-7A\n digit = %x30-39\n dash = \"-\"\n colon = \":\"\n dot = \".\"\n space = \" \"\n entry identifier: identifier\n\n bindings identifier {\n type_letter -> type_letter (string)\n doc_number -> doc_number (string)\n dotted_segment -> doc_number_dots[].dotted_segment (string)\n subpart_number -> subpart[].subpart_number (string)\n edition_value -> edition_value (string)\n language -> language (string)\n annex_marker -> annex_marker (string)\n annex_letter -> annex_letter (string)\n }\n\n test {\n accept \"G1040\"\n accept \"GA1040\"\n accept \"IALA S1070 Ed 2.0\"\n accept \"R1016:ed2.0(F)\"\n accept \"C0103-1 Ed 3.0\"\n accept \"IALA L2.1.11 Ed 2\"\n accept \"IALA G1128 Annex A Ed 1.6\"\n accept \"IALA G1045 Annex Ed 1\"\n accept \"IALA A12-01 (E)\"\n reject \"nonsense\"\n example \"G1040\" { type_letter: \"G\", doc_number: \"1040\" }\n example \"GA01.01\" {\n type_letter: \"GA\",\n doc_number: \"01\",\n doc_number_dots: [ { dotted_segment: \"01\" } ],\n }\n example \"C0103-1\" {\n type_letter: \"C\",\n doc_number: \"0103\",\n subpart: [ { subpart_number: \"1\" } ],\n }\n example \"IALA S1070 Ed 2.0\" {\n type_letter: \"S\",\n doc_number: \"1070\",\n edition_value: \"2.0\",\n }\n example \"IALA G1128 Annex A Ed 1.6\" {\n type_letter: \"G\",\n doc_number: \"1128\",\n annex_marker: \"Annex\",\n annex_letter: \"A\",\n edition_value: \"1.6\",\n }\n }\n}\n","source_hash":"876c56b59effe0fff6067618955aa411a9d5287848c677b093aacc830562d000","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:bfeb1b06d5a84459e59ff6642e7013c2e95b6ccdc9eb6b6da4d6f0bda7ca85a2","checksum":"sha256:3d26aad445f026fc9a75f25221ac1a9ad70543a3f0de051fd3496c320bc55955"}
|
package/vendor/parg/iana.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.1.0","grammar":"PubidIana","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Str":{"pattern":"IANA "}},{"Repetition":{"atom":0,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":
|
|
1
|
+
{"bindings":null,"version":"0.1.0","grammar":"PubidIana","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Str":{"pattern":"IANA "}},{"Repetition":{"atom":0,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":9}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[.]"}},{"Re":{"pattern":"[_]"}},{"Re":{"pattern":"[\\-]"}},{"Alternative":{"atoms":[3,4,5,6,7,8]}},{"Repetition":{"atom":2,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"registry","atom":10}},{"Entity":{"atom":13}},{"Str":{"pattern":"/"}},{"Named":{"name":"slash","atom":12}},{"Entity":{"atom":9}},{"Repetition":{"atom":15,"min":1,"max":null,"tag":"Repetition"}},{"Named":{"name":"sub_registry","atom":16}},{"Sequence":{"atoms":[14,17]}},{"Repetition":{"atom":18,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[1,11,19]}}],"root":20},"bindings":[{"capture":"registry","path":"registry","type":"string","card":null,"preprocess":null},{"capture":"sub_registry","path":"sub_registry","type":"string","card":null,"preprocess":null}]}},"preprocess":{},"tables":{},"lint":{"order_warnings":[]},"default_entry":"identifier","render":{},"derive":{},"tests":[{"entry":"identifier","kind":"accept","input":"IANA media-types","expect":{}},{"entry":"identifier","kind":"accept","input":"media-types/application","expect":{}},{"entry":"identifier","kind":"reject","input":"no sense","expect":{}}],"docs":{},"source":"# Port of lib/pubid/iana/parser.rb: \"IANA <slug>[/<sub-slug>]\", the\n# optional prefix consumed and discarded.\n\ngrammar PubidIana version \"0.1.0\" edition 2 {\n slug_char = %x30-39 / %x41-5A / %x61-7A / %x2E / %x5F / %x2D\n slug = 1*slug_char\n identifier = [\"IANA \"] 1*slug_char as registry [slash 1*slug_char as sub_registry]\n slash = \"/\"\n entry identifier: identifier\n\n bindings identifier {\n registry -> registry (string)\n sub_registry -> sub_registry (string)\n }\n\n\n test {\n accept \"IANA media-types\"\n accept \"media-types/application\"\n reject \"no sense\"\n }\n}\n","source_hash":"c2633424d33a30d370e12141700d25ef4124f5dc49a565da404dbf7da0bffb21","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:04d3164f0169a2311391424ff0c2b3a5b311b8f19ff4f7e7805bb4abfe4a837a","checksum":"sha256:ad040adc89787287965498aabd6ed80c23219623957ce33e9840d27bd5da3515"}
|
package/vendor/parg/idf.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"bindings":null,"version":"0.1.0","grammar":"PubidIdf","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":169}},{"Entity":{"atom":135}},{"Entity":{"atom":120}},{"Entity":{"atom":5}},{"Str":{"pattern":"IDF"}},{"Named":{"name":"publisher","atom":4}},{"Entity":{"atom":7}},{"Str":{"pattern":" "}},{"Repetition":{"atom":6,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":10}},{"Str":{"pattern":"/"}},{"Repetition":{"atom":9,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":48}},{"Str":{"pattern":"AWI RM"}},{"Str":{"pattern":"PRF RM"}},{"Str":{"pattern":"PWI RM"}},{"Str":{"pattern":"CD RM"}},{"Str":{"pattern":"NP RM"}},{"Str":{"pattern":"WD RM"}},{"Str":{"pattern":"FDIS"}},{"Str":{"pattern":"FDRM"}},{"Str":{"pattern":"NWIP"}},{"Str":{"pattern":"PDRM"}},{"Str":{"pattern":"WDAR"}},{"Str":{"pattern":"AMD"}},{"Str":{"pattern":"AWI"}},{"Str":{"pattern":"COR"}},{"Str":{"pattern":"DIS"}},{"Str":{"pattern":"DRM"}},{"Str":{"pattern":"FCD"}},{"Str":{"pattern":"FPD"}},{"Str":{"pattern":"Fpr"}},{"Str":{"pattern":"PRF"}},{"Str":{"pattern":"PWI"}},{"Str":{"pattern":"WDA"}},{"Str":{"pattern":"WDR"}},{"Str":{"pattern":"CD"}},{"Str":{"pattern":"NP"}},{"Str":{"pattern":"RM"}},{"Str":{"pattern":"WD"}},{"Alternative":{"atoms":[13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]}},{"Named":{"name":"type_with_stage","atom":40}},{"Entity":{"atom":43}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Named":{"name":"stage_iteration","atom":42}},{"Entity":{"atom":7}},{"Sequence":{"atoms":[44,45]}},{"Repetition":{"atom":46,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[41,47]}},{"Repetition":{"atom":12,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":7}},{"Repetition":{"atom":50,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":119}},{"Entity":{"atom":80}},{"Entity":{"atom":61}},{"Entity":{"atom":60}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[56,57,58,59]}},{"Repetition":{"atom":55,"min":1,"max":5,"tag":"Repetition"}},{"Entity":{"atom":77}},{"Entity":{"atom":67}},{"Str":{"pattern":"-"}},{"Str":{"pattern":"‑"}},{"Str":{"pattern":"‐"}},{"Alternative":{"atoms":[64,65,66]}},{"Entity":{"atom":7}},{"Repetition":{"atom":68,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":60}},{"Repetition":{"atom":70,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":67}},{"Entity":{"atom":60}},{"Repetition":{"atom":73,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[72,74]}},{"Repetition":{"atom":75,"min":0,"max":1,"tag":"Repetition"}},{"Sequence":{"atoms":[63,69,71,76]}},{"Repetition":{"atom":62,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[54,78]}},{"Named":{"name":"number_with_part","atom":79}},{"Entity":{"atom":86}},{"Entity":{"atom":83}},{"Str":{"pattern":"."}},{"Entity":{"atom":43}},{"Named":{"name":"stage_iteration","atom":84}},{"Sequence":{"atoms":[82,85]}},{"Repetition":{"atom":81,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":7}},{"Repetition":{"atom":88,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":91}},{"Str":{"pattern":":"}},{"Entity":{"atom":116}},{"Entity":{"atom":102}},{"Entity":{"atom":97}},{"Str":{"pattern":"19"}},{"Str":{"pattern":"20"}},{"Alternative":{"atoms":[95,96]}},{"Entity":{"atom":43}},{"Repetition":{"atom":98,"min":2,"max":null,"tag":"Repetition"}},{"Entity":{"atom":43}},{"Lookahead":{"atom":100,"positive":false}},{"Sequence":{"atoms":[94,99,101]}},{"Entity":{"atom":67}},{"Entity":{"atom":106}},{"Entity":{"atom":43}},{"Repetition":{"atom":105,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[103,104]}},{"Repetition":{"atom":107,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":67}},{"Entity":{"atom":112}},{"Entity":{"atom":43}},{"Repetition":{"atom":111,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[109,110]}},{"Repetition":{"atom":113,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[93,108,114]}},{"Named":{"name":"date","atom":115}},{"Sequence":{"atoms":[90,92]}},{"Repetition":{"atom":117,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[53,87,89,118]}},{"Sequence":{"atoms":[3,8,11,49,51,52]}},{"Named":{"name":"base","atom":2}},{"Entity":{"atom":7}},{"Repetition":{"atom":122,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":10}},{"Entity":{"atom":7}},{"Repetition":{"atom":125,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":131}},{"Str":{"pattern":"AMD"}},{"Str":{"pattern":"COR"}},{"Alternative":{"atoms":[128,129]}},{"Named":{"name":"type_with_stage","atom":130}},{"Entity":{"atom":7}},{"Repetition":{"atom":132,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":119}},{"Sequence":{"atoms":[121,123,124,126,127,133,134]}},{"Entity":{"atom":168}},{"Entity":{"atom":7}},{"Repetition":{"atom":137,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":162}},{"Str":{"pattern":"("}},{"Entity":{"atom":142}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Repetition":{"atom":141,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":","}},{"Repetition":{"atom":144,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[143,145]}},{"Entity":{"atom":154}},{"Re":{"pattern":"[E]"}},{"Re":{"pattern":"[F]"}},{"Re":{"pattern":"[A]"}},{"Re":{"pattern":"[R]"}},{"Re":{"pattern":"[D]"}},{"Re":{"pattern":"[S]"}},{"Alternative":{"atoms":[148,149,150,151,152,153]}},{"Entity":{"atom":10}},{"Repetition":{"atom":155,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[147,156]}},{"Alternative":{"atoms":[146,157]}},{"Repetition":{"atom":158,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"languages","atom":159}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[140,160,161]}},{"Repetition":{"atom":139,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":166}},{"Str":{"pattern":"(all parts)"}},{"Named":{"name":"all_parts","atom":165}},{"Repetition":{"atom":164,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[138,163,167]}},{"Sequence":{"atoms":[1,136]}},{"Entity":{"atom":173}},{"Entity":{"atom":120}},{"Entity":{"atom":168}},{"Sequence":{"atoms":[171,172]}},{"Alternative":{"atoms":[0,170]}}],"root":174},"bindings":[]}},"preprocess":{},"tables":{"idf_typed_stages":{"file":"idf_typed_stages.yaml","rows":[{"abbr":"PWI RM"},{"abbr":"NP RM"},{"abbr":"AWI RM"},{"abbr":"WD RM"},{"abbr":"CD RM"},{"abbr":"PDRM"},{"abbr":"DRM"},{"abbr":"FDRM"},{"abbr":"PRF RM"},{"abbr":"RM"},{"abbr":"AMD"},{"abbr":"COR"},{"abbr":"PWI"},{"abbr":"NP"},{"abbr":"NWIP"},{"abbr":"AWI"},{"abbr":"WD"},{"abbr":"CD"},{"abbr":"FCD"},{"abbr":"DIS"},{"abbr":"FPD"},{"abbr":"FDIS"},{"abbr":"PRF"},{"abbr":"Fpr"},{"abbr":"WDR"},{"abbr":"WDA"},{"abbr":"WDAR"}]},"idf_typed_stages_supplements":{"file":"idf_typed_stages_supplements.yaml","rows":[{"abbr":"AMD"},{"abbr":"COR"}]}},"lint":{"order_warnings":["rule dash: branches 2 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[],"docs":{},"source":"# Port of lib/pubid/idf/parser.rb: IDF identifiers and their\n# supplements. The ISO joint form (ISO 5537|IDF 26) inlines these rules\n# as idf_* in iso.pg.\n\ngrammar PubidIdf version \"0.1.0\" {\n digit = %x30-39\n word_char = %x30-39 / %x41-5A / %x61-7A / %x5F\n dash = \"-\" / \"‑\" / \"‐\"\n dot = \".\"\n slash = \"/\"\n space = \" \"\n colon = \":\"\n letter = %x41-5A / %x61-7A\n lower = %x61-7A\n century = \"19\" / \"20\"\n year_digits = century 2*digit !digit\n month_digits = 2*digit\n day_digits = 2*digit\n publisher = \"IDF\" as publisher\n number = 1*5word_char\n part_and_subpart = dash [space] 1*word_char *1(dash 1*word_char)\n number_with_part = (number [part_and_subpart]) as number_with_part\n date = (year_digits [(dash month_digits)] [(dash day_digits)]) as date\n stage_iteration = dot digit as stage_iteration\n second_part = number_with_part [stage_iteration] [space] [(colon date)]\n all_parts = \"(all parts)\" as all_parts\n language = \"(\" *(1*lower [\",\"] / (one_of_efards [slash])) as languages \")\"\n one_of_efards = %x45 / %x46 / %x41 / %x52 / %x44 / %x53\n third_part = [space] [language] [all_parts]\n identifier_publisher_no_third = publisher [space] [slash] [type_with_stage] [space] second_part\n identifier_publisher = identifier_publisher_no_third third_part\n type_with_stage = alt from_table \"idf_typed_stages\" column \"abbr\" as type_with_stage [digit as stage_iteration space]\n supplement_type_with_stage = alt from_table \"idf_typed_stages_supplements\" column \"abbr\" as type_with_stage\n supplement_identifier_no_third = (identifier_publisher_no_third as base) [space] slash [space] supplement_type_with_stage [space] second_part\n supplement_identifier = supplement_identifier_no_third third_part\n identifier = supplement_identifier / identifier_publisher\n\n entry identifier: identifier\n}\n","source_hash":"003db1b987581830be83c1eed083ae3a02d23facba0ae8e496046b6914ff623f","compiler_version":"1.3.93","checksum":"sha256:f17f36891ddfb0594cf57ce6c2a6005b7c8baa7fa8bbd7c3f2e89210091ad7c3"}
|
|
1
|
+
{"bindings":null,"version":"0.1.0","grammar":"PubidIdf","shape":"parsanol-tree/v2","binding_version":1,"entries":{"identifier":{"root":"identifier","grammar":{"atoms":[{"Entity":{"atom":226}},{"Entity":{"atom":191}},{"Entity":{"atom":116}},{"Entity":{"atom":5}},{"Str":{"pattern":"IDF"}},{"Named":{"name":"publisher","atom":4}},{"Str":{"pattern":" "}},{"Repetition":{"atom":6,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"/"}},{"Repetition":{"atom":8,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":46}},{"Str":{"pattern":"AWI RM"}},{"Str":{"pattern":"PRF RM"}},{"Str":{"pattern":"PWI RM"}},{"Str":{"pattern":"CD RM"}},{"Str":{"pattern":"NP RM"}},{"Str":{"pattern":"WD RM"}},{"Str":{"pattern":"FDIS"}},{"Str":{"pattern":"FDRM"}},{"Str":{"pattern":"NWIP"}},{"Str":{"pattern":"PDRM"}},{"Str":{"pattern":"WDAR"}},{"Str":{"pattern":"AMD"}},{"Str":{"pattern":"AWI"}},{"Str":{"pattern":"COR"}},{"Str":{"pattern":"DIS"}},{"Str":{"pattern":"DRM"}},{"Str":{"pattern":"FCD"}},{"Str":{"pattern":"FPD"}},{"Str":{"pattern":"Fpr"}},{"Str":{"pattern":"PRF"}},{"Str":{"pattern":"PWI"}},{"Str":{"pattern":"WDA"}},{"Str":{"pattern":"WDR"}},{"Str":{"pattern":"CD"}},{"Str":{"pattern":"NP"}},{"Str":{"pattern":"RM"}},{"Str":{"pattern":"WD"}},{"Alternative":{"atoms":[11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]}},{"Named":{"name":"base_type_with_stage","atom":38}},{"Entity":{"atom":41}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Named":{"name":"base_stage_iteration","atom":40}},{"Str":{"pattern":" "}},{"Sequence":{"atoms":[42,43]}},{"Repetition":{"atom":44,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[39,45]}},{"Repetition":{"atom":10,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":48,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":115}},{"Entity":{"atom":83}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[52,53,54,55]}},{"Repetition":{"atom":56,"min":1,"max":5,"tag":"Repetition"}},{"Entity":{"atom":62}},{"Str":{"pattern":"-"}},{"Str":{"pattern":"‑"}},{"Str":{"pattern":"‐"}},{"Alternative":{"atoms":[59,60,61]}},{"Str":{"pattern":" "}},{"Repetition":{"atom":63,"min":0,"max":1,"tag":"Maybe"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[65,66,67,68]}},{"Repetition":{"atom":69,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":62}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[72,73,74,75]}},{"Repetition":{"atom":76,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[71,77]}},{"Repetition":{"atom":78,"min":0,"max":1,"tag":"Repetition"}},{"Sequence":{"atoms":[58,64,70,79]}},{"Repetition":{"atom":80,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[57,81]}},{"Named":{"name":"base_number_with_part","atom":82}},{"Entity":{"atom":88}},{"Str":{"pattern":"."}},{"Entity":{"atom":41}},{"Named":{"name":"base_stage_iteration","atom":86}},{"Sequence":{"atoms":[85,87]}},{"Repetition":{"atom":84,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":90,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Entity":{"atom":112}},{"Str":{"pattern":"19"}},{"Str":{"pattern":"20"}},{"Alternative":{"atoms":[94,95]}},{"Entity":{"atom":41}},{"Repetition":{"atom":97,"min":2,"max":null,"tag":"Repetition"}},{"Entity":{"atom":41}},{"Lookahead":{"atom":99,"positive":false}},{"Entity":{"atom":62}},{"Entity":{"atom":41}},{"Repetition":{"atom":102,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[101,103]}},{"Repetition":{"atom":104,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":62}},{"Entity":{"atom":41}},{"Repetition":{"atom":107,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[106,108]}},{"Repetition":{"atom":109,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[96,98,100,105,110]}},{"Named":{"name":"base_date","atom":111}},{"Sequence":{"atoms":[92,93]}},{"Repetition":{"atom":113,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[51,89,91,114]}},{"Sequence":{"atoms":[3,7,9,47,49,50]}},{"Str":{"pattern":" "}},{"Repetition":{"atom":117,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"/"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":120,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":126}},{"Str":{"pattern":"AMD"}},{"Str":{"pattern":"COR"}},{"Alternative":{"atoms":[123,124]}},{"Named":{"name":"type_with_stage","atom":125}},{"Str":{"pattern":" "}},{"Repetition":{"atom":127,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":190}},{"Entity":{"atom":158}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[131,132,133,134]}},{"Repetition":{"atom":135,"min":1,"max":5,"tag":"Repetition"}},{"Entity":{"atom":62}},{"Str":{"pattern":" "}},{"Repetition":{"atom":138,"min":0,"max":1,"tag":"Maybe"}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[140,141,142,143]}},{"Repetition":{"atom":144,"min":1,"max":null,"tag":"Repetition"}},{"Entity":{"atom":62}},{"Re":{"pattern":"[\\x30-\\x39]"}},{"Re":{"pattern":"[\\x41-\\x5a]"}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Re":{"pattern":"[_]"}},{"Alternative":{"atoms":[147,148,149,150]}},{"Repetition":{"atom":151,"min":1,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[146,152]}},{"Repetition":{"atom":153,"min":0,"max":1,"tag":"Repetition"}},{"Sequence":{"atoms":[137,139,145,154]}},{"Repetition":{"atom":155,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[136,156]}},{"Named":{"name":"number_with_part","atom":157}},{"Entity":{"atom":163}},{"Str":{"pattern":"."}},{"Entity":{"atom":41}},{"Named":{"name":"stage_iteration","atom":161}},{"Sequence":{"atoms":[160,162]}},{"Repetition":{"atom":159,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":165,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Entity":{"atom":187}},{"Str":{"pattern":"19"}},{"Str":{"pattern":"20"}},{"Alternative":{"atoms":[169,170]}},{"Entity":{"atom":41}},{"Repetition":{"atom":172,"min":2,"max":null,"tag":"Repetition"}},{"Entity":{"atom":41}},{"Lookahead":{"atom":174,"positive":false}},{"Entity":{"atom":62}},{"Entity":{"atom":41}},{"Repetition":{"atom":177,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[176,178]}},{"Repetition":{"atom":179,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":62}},{"Entity":{"atom":41}},{"Repetition":{"atom":182,"min":2,"max":null,"tag":"Repetition"}},{"Sequence":{"atoms":[181,183]}},{"Repetition":{"atom":184,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[171,173,175,180,185]}},{"Named":{"name":"date","atom":186}},{"Sequence":{"atoms":[167,168]}},{"Repetition":{"atom":188,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[130,164,166,189]}},{"Sequence":{"atoms":[2,118,119,121,122,128,129]}},{"Entity":{"atom":225}},{"Str":{"pattern":" "}},{"Repetition":{"atom":193,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":219}},{"Str":{"pattern":"("}},{"Entity":{"atom":198}},{"Re":{"pattern":"[\\x61-\\x7a]"}},{"Repetition":{"atom":197,"min":1,"max":null,"tag":"Repetition"}},{"Str":{"pattern":","}},{"Repetition":{"atom":200,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[199,201]}},{"Entity":{"atom":210}},{"Re":{"pattern":"[E]"}},{"Re":{"pattern":"[F]"}},{"Re":{"pattern":"[A]"}},{"Re":{"pattern":"[R]"}},{"Re":{"pattern":"[D]"}},{"Re":{"pattern":"[S]"}},{"Alternative":{"atoms":[204,205,206,207,208,209]}},{"Entity":{"atom":212}},{"Str":{"pattern":"/"}},{"Repetition":{"atom":211,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[203,213]}},{"Alternative":{"atoms":[202,214]}},{"Repetition":{"atom":215,"min":0,"max":null,"tag":"Repetition"}},{"Named":{"name":"languages","atom":216}},{"Str":{"pattern":")"}},{"Sequence":{"atoms":[196,217,218]}},{"Repetition":{"atom":195,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":223}},{"Str":{"pattern":"(all parts)"}},{"Named":{"name":"all_parts","atom":222}},{"Repetition":{"atom":221,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[194,220,224]}},{"Sequence":{"atoms":[1,192]}},{"Entity":{"atom":286}},{"Entity":{"atom":284}},{"Entity":{"atom":5}},{"Str":{"pattern":" "}},{"Repetition":{"atom":230,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":"/"}},{"Repetition":{"atom":232,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":269}},{"Str":{"pattern":"AWI RM"}},{"Str":{"pattern":"PRF RM"}},{"Str":{"pattern":"PWI RM"}},{"Str":{"pattern":"CD RM"}},{"Str":{"pattern":"NP RM"}},{"Str":{"pattern":"WD RM"}},{"Str":{"pattern":"FDIS"}},{"Str":{"pattern":"FDRM"}},{"Str":{"pattern":"NWIP"}},{"Str":{"pattern":"PDRM"}},{"Str":{"pattern":"WDAR"}},{"Str":{"pattern":"AMD"}},{"Str":{"pattern":"AWI"}},{"Str":{"pattern":"COR"}},{"Str":{"pattern":"DIS"}},{"Str":{"pattern":"DRM"}},{"Str":{"pattern":"FCD"}},{"Str":{"pattern":"FPD"}},{"Str":{"pattern":"Fpr"}},{"Str":{"pattern":"PRF"}},{"Str":{"pattern":"PWI"}},{"Str":{"pattern":"WDA"}},{"Str":{"pattern":"WDR"}},{"Str":{"pattern":"CD"}},{"Str":{"pattern":"NP"}},{"Str":{"pattern":"RM"}},{"Str":{"pattern":"WD"}},{"Alternative":{"atoms":[235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261]}},{"Named":{"name":"type_with_stage","atom":262}},{"Entity":{"atom":41}},{"Named":{"name":"stage_iteration","atom":264}},{"Str":{"pattern":" "}},{"Sequence":{"atoms":[265,266]}},{"Repetition":{"atom":267,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[263,268]}},{"Repetition":{"atom":234,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":271,"min":0,"max":1,"tag":"Maybe"}},{"Entity":{"atom":283}},{"Entity":{"atom":158}},{"Entity":{"atom":163}},{"Repetition":{"atom":275,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":" "}},{"Repetition":{"atom":277,"min":0,"max":1,"tag":"Maybe"}},{"Str":{"pattern":":"}},{"Entity":{"atom":187}},{"Sequence":{"atoms":[279,280]}},{"Repetition":{"atom":281,"min":0,"max":1,"tag":"Maybe"}},{"Sequence":{"atoms":[274,276,278,282]}},{"Sequence":{"atoms":[229,231,233,270,272,273]}},{"Entity":{"atom":225}},{"Sequence":{"atoms":[228,285]}},{"Alternative":{"atoms":[0,227]}}],"root":287},"bindings":[{"capture":"publisher","path":"publisher","type":"string","card":null,"preprocess":null},{"capture":"number_with_part","path":"number_with_part","type":"string","card":null,"preprocess":null},{"capture":"base_number_with_part","path":"base_number_with_part","type":"string","card":null,"preprocess":null},{"capture":"date","path":"date","type":"string","card":null,"preprocess":null},{"capture":"base_date","path":"base_date","type":"string","card":null,"preprocess":null},{"capture":"stage_iteration","path":"stage_iteration","type":"string","card":null,"preprocess":null},{"capture":"base_stage_iteration","path":"base_stage_iteration","type":"string","card":null,"preprocess":null},{"capture":"type_with_stage","path":"type_with_stage","type":"string","card":null,"preprocess":null},{"capture":"base_type_with_stage","path":"base_type_with_stage","type":"string","card":null,"preprocess":null},{"capture":"all_parts","path":"all_parts","type":"string","card":null,"preprocess":null},{"capture":"languages","path":"languages","type":"string","card":null,"preprocess":null}]}},"preprocess":{},"tables":{"idf_typed_stages":{"file":"idf_typed_stages.yaml","rows":[{"abbr":"PWI RM"},{"abbr":"NP RM"},{"abbr":"AWI RM"},{"abbr":"WD RM"},{"abbr":"CD RM"},{"abbr":"PDRM"},{"abbr":"DRM"},{"abbr":"FDRM"},{"abbr":"PRF RM"},{"abbr":"RM"},{"abbr":"AMD"},{"abbr":"COR"},{"abbr":"PWI"},{"abbr":"NP"},{"abbr":"NWIP"},{"abbr":"AWI"},{"abbr":"WD"},{"abbr":"CD"},{"abbr":"FCD"},{"abbr":"DIS"},{"abbr":"FPD"},{"abbr":"FDIS"},{"abbr":"PRF"},{"abbr":"Fpr"},{"abbr":"WDR"},{"abbr":"WDA"},{"abbr":"WDAR"}]},"idf_typed_stages_supplements":{"file":"idf_typed_stages_supplements.yaml","rows":[{"abbr":"AMD"},{"abbr":"COR"}]}},"lint":{"order_warnings":["rule dash: branches 2 and 3 are order-dependent (shared first bytes; ordered choice is decisive)","rule identifier: branches 1 and 2 are order-dependent (shared first bytes; ordered choice is decisive)"]},"default_entry":"identifier","render":{},"derive":{},"tests":[],"docs":{},"source":"# Port of lib/pubid/idf/parser.rb: IDF identifiers and their\n# supplements. The ISO joint form (ISO 5537|IDF 26) inlines these rules\n# as idf_* in iso.pg.\n#\n# Edition-2 notes: number_with_part inlines the number and\n# part_and_subpart bodies fully to raw terms at the capture site (a\n# capture wrapping rule refs expands to element hashes, while the\n# inlined body binds as one scalar string). The supplement base wrapper\n# capture drops (the bindings cannot nest); within a supplement the base\n# portion captures under base_* names so the supplement layer keeps the\n# canonical number_with_part/date/type_with_stage captures — the values\n# the builder read at top level — mirroring the csa part_* per-position\n# convention.\n\ngrammar PubidIdf version \"0.1.0\" edition 2 {\n digit = %x30-39\n word_char = %x30-39 / %x41-5A / %x61-7A / %x5F\n dash = \"-\" / \"‑\" / \"‐\"\n dot = \".\"\n slash = \"/\"\n space = \" \"\n colon = \":\"\n letter = %x41-5A / %x61-7A\n lower = %x61-7A\n century = \"19\" / \"20\"\n year_digits = century 2*digit !digit\n month_digits = 2*digit\n day_digits = 2*digit\n publisher = \"IDF\" as publisher\n number_with_part = {\n (\n 1*5(%x30-39 / %x41-5A / %x61-7A / %x5F)\n [\n dash [\" \"]\n 1*(%x30-39 / %x41-5A / %x61-7A / %x5F)\n *1( dash 1*(%x30-39 / %x41-5A / %x61-7A / %x5F) )\n ]\n ) as number_with_part\n }\n date = {\n (\n (\"19\" / \"20\") 2*digit !digit\n [(dash 2*digit)]\n [(dash 2*digit)]\n ) as date\n }\n stage_iteration = \".\" digit as stage_iteration\n second_part = number_with_part [stage_iteration] [\" \"] [( \":\" date )]\n all_parts = \"(all parts)\" as all_parts\n language = \"(\" ( *( 1*lower [\",\"] / ( one_of_efards [slash] ) ) ) as languages \")\"\n one_of_efards = %x45 / %x46 / %x41 / %x52 / %x44 / %x53\n third_part = [\" \"] [language] [all_parts]\n identifier_publisher_no_third = {\n publisher [\" \"] [\"/\"] [type_with_stage] [\" \"] second_part\n }\n identifier_publisher = identifier_publisher_no_third third_part\n type_with_stage = {\n (\n alt from_table \"idf_typed_stages\" column \"abbr\"\n ) as type_with_stage\n [digit as stage_iteration \" \"]\n }\n # Supplement side: the supplement layer keeps the canonical\n # type_with_stage/number_with_part/date captures (what the builder\n # read at top level); its base portion captures under base_* names so\n # the two layers never collapse onto each other.\n supplement_type_with_stage = {\n (\n alt from_table \"idf_typed_stages_supplements\" column \"abbr\"\n ) as type_with_stage\n }\n base_number_with_part = {\n (\n 1*5(%x30-39 / %x41-5A / %x61-7A / %x5F)\n [\n dash [\" \"]\n 1*(%x30-39 / %x41-5A / %x61-7A / %x5F)\n *1( dash 1*(%x30-39 / %x41-5A / %x61-7A / %x5F) )\n ]\n ) as base_number_with_part\n }\n base_date = {\n (\n (\"19\" / \"20\") 2*digit !digit\n [(dash 2*digit)]\n [(dash 2*digit)]\n ) as base_date\n }\n base_stage_iteration = \".\" digit as base_stage_iteration\n base_second_part = base_number_with_part [base_stage_iteration] [\" \"] [( \":\" base_date )]\n base_type_with_stage = {\n (\n alt from_table \"idf_typed_stages\" column \"abbr\"\n ) as base_type_with_stage\n [digit as base_stage_iteration \" \"]\n }\n supplement_base_no_third = {\n publisher [\" \"] [\"/\"] [base_type_with_stage] [\" \"] base_second_part\n }\n supplement_second_part = number_with_part [stage_iteration] [\" \"] [( \":\" date )]\n supplement_identifier_no_third = {\n supplement_base_no_third [\" \"] \"/\" [\" \"] supplement_type_with_stage [\" \"] supplement_second_part\n }\n supplement_identifier = supplement_identifier_no_third third_part\n identifier = supplement_identifier / identifier_publisher\n\n entry identifier: identifier\n\n bindings identifier {\n publisher -> publisher (string)\n number_with_part -> number_with_part (string)\n base_number_with_part -> base_number_with_part (string)\n date -> date (string)\n base_date -> base_date (string)\n stage_iteration -> stage_iteration (string)\n base_stage_iteration -> base_stage_iteration (string)\n type_with_stage -> type_with_stage (string)\n base_type_with_stage -> base_type_with_stage (string)\n all_parts -> all_parts (string)\n languages -> languages (string)\n }\n}\n","source_hash":"adf15539b2c63baa49e70c4ffe48fdbe92a797d5eccb8f47832055a8b16daf16","unicode_tables":"onigmo (Ruby 3.4.8)","compiler_version":"1.3.121","edition":2,"semantics_hash":"sha256:fa1a6066f425a30ee799654dc7f02556a0fdd5e62434919dbd680903ff835dee","checksum":"sha256:ac9176b444f808ba9ccdca26d4974adb2ce556e4438926fd4f564a55139c29a7"}
|