Module: Stupidedi::Versions::FunctionalGroups::FiftyTen::SegmentDefs

Defined in:
lib/stupidedi/versions/functional_groups/005010/segment_defs.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/GE.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/GS.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/HI.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/HL.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/K3.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/LQ.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/LX.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/N1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/N2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/N3.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/N4.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/OI.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SE.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/ST.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/AK1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/AK2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/AK9.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/AMT.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/BHT.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/BPR.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CAS.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CL1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CLM.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CLP.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CN1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CR1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CR2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CR3.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CRC.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CTP.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CTX.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/CUR.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/DMG.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/DN1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/DN2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/DTM.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/DTP.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/FRM.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/HCP.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/IK3.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/IK4.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/IK5.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/LIN.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/MEA.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/MIA.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/MOA.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/NM1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/NTE.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PAT.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PER.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PLB.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PRV.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PS1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/PWK.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/QTY.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/RDM.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/REF.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SBR.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/STC.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SV1.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SV2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SV3.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SV5.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SVC.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/SVD.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/TOO.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/TRN.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/TS2.rb,
lib/stupidedi/versions/functional_groups/005010/segment_defs/TS3.rb

Constant Summary collapse

GE =
s::SegmentDef.build(:GE, "Functional Group Trailer",
"To indicate the end of a functional group and provider control information",
e::E97  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E28  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
GS =
s::SegmentDef.build(:GS, "Functional Group Header",
"To indicate the beginning of a functional group and to provider control information",
e::E479 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E142 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E124 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E28  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),

e::E455 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E480 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
HI =
s::SegmentDef.build(:HI, "Health Care Information Codes",
"To supply information related to the delivery of health care",
e::C022 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::C022 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C022 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
HL =
s::SegmentDef.build(:HL, "Hierarchical Level",
"To identify dependencies among the content of hierarchically related groups of data segments",
e::E628 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E734 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E735 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E736 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
K3 =
s::SegmentDef.build(:K3, "File Information",
"To transmit a fixed-format record or matrix contents",
e::E449 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1333.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C001 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
LQ =
s::SegmentDef.build(:LQ, "Industry Code Identification",
"To identify standard industry codes",
e::E1270.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1271.simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::C.build(1, 2))
LX =
s::SegmentDef.build(:LX, "Transaction Set Line Number",
"To reference a line number in a transaction set",
e::E554 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
N1 =
s::SegmentDef.build(:N1, "Party Identification",
"To identify a party by type of organization, name, and code",
e::E98  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E93  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E66  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E67  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E706 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E98  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::R.build(2, 3),
SyntaxNotes::P.build(3, 4))
N2 =
s::SegmentDef.build(:N2, "Additional Name Information",
"To specify additional names",
e::E93  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E93  .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
N3 =
s::SegmentDef.build(:N3, "Party Location",
"To specify the location of the named party",
e::E166 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E166 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
N4 =
s::SegmentDef.build(:N4, "Geographic Location",
"To specify the geographic place of the named party",
e::E19  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E156 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E116 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E26  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E309 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E310 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1715.simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::E.build(2, 7),
SyntaxNotes::C.build(6, 5),
SyntaxNotes::C.build(7, 4))
OI =
s::SegmentDef.build(:OI, "Other Health Insurance Information",
"To specify information associated with other health insurance coverage",
e::E1032.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1383.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1351.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1360.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1363.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
SE =
s::SegmentDef.build(:SE, "Transaction Set Trailer",
"To indicate the end of the transaction set and provide the count of the transmitted segments (including the beginning (ST) and ending (SE) segments)",
e::E96  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E329 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
ST =
s::SegmentDef.build(:ST, "Transaction Set Header",
"To indicate the start of a transaction set and assign a control number",
e::E143 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E329 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1705.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
AK1 =
s::SegmentDef.build(:AK1, "Functional Group Response Header",
"To start acknowledgement of a functional group",
e::E479 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E28  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E480 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
AK2 =
s::SegmentDef.build(:AK2, "Transaction Set Response Header",
"To start acknowledgement of a single transaction set",
e::E143 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E329 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1705.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
AK9 =
s::SegmentDef.build(:AK9, "Functional Group Response Trailer",
"To acknowledge acceptance or rejection of a functional group and report the number of included transaction sets from the original trailer, the accepted sets, and the received sets in this functional group",
e::E715 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E97  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E123 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E2   .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E716 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E716 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E716 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E716 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E716 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
AMT =
s::SegmentDef.build(:AMT, "Monetary Amount Information",
"To indicate the total monetary amount",
e::E522 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E478 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
BHT =
s::SegmentDef.build(:BHT, "Beginning of Hierarchical Transaction",
"To define the business hierarchical structure of the transaction set and identify the business application purpose and reference data, i.e., number, date, and time",
e::E1005.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E353 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E640 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
BPR =
s::SegmentDef.build(:BPR, "Financial Information",
"To indicate the beginning of a Payment Order/Remittance Advice Transaction Set and total payment amount, or to enable related transfer of funds and/or information from payer to payee to occur",
e::E305 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E478 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E591 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E812 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E506 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E507 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E569 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E508 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E509 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E510 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E506 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E507 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E569 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E508 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1048.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E506 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E507 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E569 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E508 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 6,  7),
SyntaxNotes::C.build( 8,  9),
SyntaxNotes::P.build(12, 13),
SyntaxNotes::C.build(14, 15),
SyntaxNotes::P.build(18, 19),
SyntaxNotes::C.build(20, 21))
CAS =
s::SegmentDef.build(:CAS, "Claims Adjustment",
"To supply adjustment reason codes and amounts as needed for an entire claim or for a particular service within the claim being paid",
e::E1033.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1034.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::L.build( 5,  6,  7),
SyntaxNotes::C.build( 6,  5),
SyntaxNotes::C.build( 7,  5),
SyntaxNotes::L.build( 8,  9, 10),
SyntaxNotes::C.build( 9,  8),
SyntaxNotes::C.build(10,  8),
SyntaxNotes::L.build(11, 12, 13),
SyntaxNotes::C.build(12, 11),
SyntaxNotes::C.build(13, 11),
SyntaxNotes::L.build(14, 15, 16),
SyntaxNotes::C.build(15, 14),
SyntaxNotes::C.build(16, 14),
SyntaxNotes::L.build(17, 18, 19),
SyntaxNotes::C.build(18, 17),
SyntaxNotes::C.build(19, 17))
CL1 =
s::SegmentDef.build(:CL1, "Claim Codes",
"To supply information specific to hopsital claims",
e::E1315.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1314.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1352.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1345.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
CLM =
s::SegmentDef.build(:CLM, "Health Claim",
"To specify basic data about the claim",
e::E1028.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1032.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1343.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C023 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E1359.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1363.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1351.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C024 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1366.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1338.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1360.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1029.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E1383.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1514.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
CLP =
s::SegmentDef.build(:CLP, "Claim Level Data",
"To supply information common to all services of a claim",
e::E1028.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1029.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1032.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1331.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1325.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1352.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1354.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E954 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
CN1 =
s::SegmentDef.build(:CN1, "Contract Information",
"To specify basic data about the contract or contract line item",
e::E1166.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E332 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E338 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E799 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
CR1 =
s::SegmentDef.build(:CR1, "Ambulance Certification",
"To supply information related to the ambulance service rendered to a patient",
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E81  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1316.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1317.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E166 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E166 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(1, 2),
SyntaxNotes::P.build(5, 6))
CR2 =
s::SegmentDef.build(:CR2, "Chiropractic Certification",
"To supply information related to the chiropractic service rendered to a patient",
e::E609 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1367.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1367.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1342.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(1, 2),
SyntaxNotes::C.build(4, 3),
SyntaxNotes::P.build(5, 6))
CR3 =
s::SegmentDef.build(:CR3, "Durable Medical Equipment Certification",
"To supply information regarding a physician's certification for durable medical equipment",
e::E1322.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1335.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(2, 3))
CRC =
s::SegmentDef.build(:CRC, "Conditions Indicator",
"To supply information on conditions",
e::E1136.simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
e::E1321.simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
e::E1321.simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E1321.simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E1321.simple_use(r::Optional,  s::RepeatCount.bounded(1)),

e::E1321.simple_use(r::Optional,  s::RepeatCount.bounded(1)))
CTP =
s::SegmentDef.build(:CTP, "Pricing Information",
"To specify pricing information",
e::E687 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E236 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E212 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C001 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E648 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E649 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E639 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E499 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E289 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 4,  5),
SyntaxNotes::C.build( 6,  7),
SyntaxNotes::C.build( 9,  2),
SyntaxNotes::C.build(10,  2),
SyntaxNotes::C.build(11,  3))
CTX =
s::SegmentDef.build(:CTX, "Context",
"Describes an event context in terms of the application or implementation context in force at the time the event occurred and the position in the EDI stream at which that context was activated",
e::C998 .simple_use(r::Mandatory,  s::RepeatCount.bounded(10)),
e::E721 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E719 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E447 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C030 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C999 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
CUR =
s::SegmentDef.build(:CUR, "Currency",
"To specify the currency (dollars, pounds, francs, etc) used in a transaction",
e::E98  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E100 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E280 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E98  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E100 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E669 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E374 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E374 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E374 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E374 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E374 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::C.build( 8,  7),
SyntaxNotes::C.build( 9,  7),
SyntaxNotes::L.build(10, 11, 12),
SyntaxNotes::C.build(11, 10),
SyntaxNotes::C.build(12, 10),
SyntaxNotes::L.build(13, 14, 15),
SyntaxNotes::C.build(14, 13),
SyntaxNotes::C.build(15, 13),
SyntaxNotes::L.build(16, 17, 18),
SyntaxNotes::C.build(17, 16),
SyntaxNotes::C.build(18, 16),
SyntaxNotes::L.build(19, 20, 21),
SyntaxNotes::C.build(20, 19),
SyntaxNotes::C.build(21, 19)
)
DMG =
s::SegmentDef.build(:DMG, "Demographic Information",
"To supply demographic information",
e::E1250.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1251.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1068.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1067.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C056 .simple_use(r::Relational, s::RepeatCount.bounded(10)),
e::E1066.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E26  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E659 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1270.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1271.simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 1,  2),
SyntaxNotes::P.build(10, 11),
SyntaxNotes::C.build(11,  5))
DN1 =
s::SegmentDef.build(:DN1, "Orthodontic Information",
"To supply orthodontic information",
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
DN2 =
s::SegmentDef.build(:DN2, "Tooth Summary",
"To specify the status of individual teeth",
e::E127 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1368.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1250.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1251.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1270.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
DTM =
s::SegmentDef.build(:DTM, "Date/Time Reference",
"To specify pertinent dates and times",
e::E374 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E337 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E623 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1250.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1251.simple_use(r::Relational, s::RepeatCount.bounded(1)))
DTP =
s::SegmentDef.build(:DTP, "Date or Time Period",
"To specify any or all of a date, or a time period",
e::E374 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1250.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1251.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
FRM =
s::SegmentDef.build(:FRM, "Supporting Documentation",
"To specify information in response to a codified questionnaire document",
e::E350 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E332 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::R.build(2, 3, 4, 5))
HCP =
s::SegmentDef.build(:HCP, "Health Care Pricing",
"To specify pricing or repricing information about a health care claim or line item",
e::E1473.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E118 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E901 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1526.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1527.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::R.build( 1, 13),
SyntaxNotes::P.build( 9, 10),
SyntaxNotes::P.build(11, 12))
IK3 =
s::SegmentDef.build(:IK3, "Transaction Set Response Header",
"To start acknowledgement of a single transaction set",
e::E721 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E719 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E447 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E620 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
IK4 =
s::SegmentDef.build(:IK4, "Implementation Data Element Note",
"To report implementation errors in a data element or composite data structure and identify the location of the data element",
e::C030 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E725 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E621 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E724 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
IK5 =
s::SegmentDef.build(:IK5, "Transaction Set Response Trailer",
"To acknowledge acceptance or rejection and report implementation errors in a transaction set",
e::E717 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E618 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E618 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E618 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E618 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E618 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
LIN =
s::SegmentDef.build(:LIN, "Item Identification",
"To specify basic item identification data",
e::E350 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E235 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 4,  5),
SyntaxNotes::P.build( 6,  7),
SyntaxNotes::P.build( 8,  9),
SyntaxNotes::P.build(10, 11),
SyntaxNotes::P.build(12, 13),
SyntaxNotes::P.build(14, 15),
SyntaxNotes::P.build(16, 17),
SyntaxNotes::P.build(18, 19),
SyntaxNotes::P.build(20, 21),
SyntaxNotes::P.build(22, 23),
SyntaxNotes::P.build(24, 25),
SyntaxNotes::P.build(26, 27),
SyntaxNotes::P.build(28, 29),
SyntaxNotes::P.build(30, 31))
MEA =
s::SegmentDef.build(:MEA, "Measurements",
"To specify physical measurements or counts, including dimensions, tolerances, variances, and weights",
e::E737 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E738 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E739 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C001 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E740 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E741 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E935 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E936 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E752 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E753 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1270.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1271.simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::R.build( 3,  5,  6,  8),
SyntaxNotes::E.build( 4, 12),
SyntaxNotes::L.build( 5,  4, 12),
SyntaxNotes::L.build( 6,  4, 12),
SyntaxNotes::L.build( 7,  3,  5,  6),
SyntaxNotes::E.build( 8,  3),
SyntaxNotes::P.build(11, 12))
MIA =
s::SegmentDef.build(:MIA, "Medicare Inpatient Adjudication",
"To provide claim-level data related to the adjudication of Medicare inpatient claims",
e::E380 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
MOA =
s::SegmentDef.build(:MOA, "Medicare Outpatient Adjudication",
"To convey claim-level data related to the adjudication of Medicare claims not related to an inpatient setting",
e::E954 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
NM1 =
s::SegmentDef.build(:NM1, "Individual or Organizational Name",
"To supply the full name of an individual or organizational entity",
e::E98  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1065.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1035.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1036.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1037.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1038.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1039.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E66  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E67  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E706 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E98  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1035.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 8,  9),
SyntaxNotes::C.build(11, 10),
SyntaxNotes::C.build(12,  3))
NTE =
s::SegmentDef.build(:NTE, "Note/Special Instruction",
"To transmit information in a free-form format, if necessary, for comment or special instruction",
e::E363 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)))
PAT =
s::SegmentDef.build(:PAT, "Patient Information",
"To supply patient information",
e::E1069.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1384.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E584 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1220.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1250.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1251.simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E81  .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(5, 6),
SyntaxNotes::P.build(7, 8))
PER =
s::SegmentDef.build(:PER, "Administrative Communications Contact",
"To identify a person or office to whom administrative communications should be directed",
e::E366 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E93  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E365 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E364 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E365 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E364 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::E365 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E364 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E443 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(3, 4),
SyntaxNotes::P.build(5, 6),
SyntaxNotes::P.build(7, 8))
PLB =
s::SegmentDef.build(:PLB, "Provider Level Adjustment",
"To convey provider level adjustment information for debit or credit transactions such as, accelerated payments, cost report settlements for a fiscal year, and timeliness report penalties unrelated to a specific claim or service",
e::E127 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::C042 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::C042 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::C042 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C042 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C042 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

e::C042 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),

SyntaxNotes::P.build( 5,  8),
SyntaxNotes::P.build( 7,  8),
SyntaxNotes::P.build( 9, 10),
SyntaxNotes::P.build(11, 12),
SyntaxNotes::P.build(13, 14))
PRV =
s::SegmentDef.build(:PRV, "Provider Information",
"To specify the identifying characteristics of a provider",
e::E1221.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E128 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E156 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C035 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1223.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(2, 3))
PS1 =
s::SegmentDef.build(:PS1, "Purchase Service",
"To specify the information about services that are purchased",
e::E127 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E156 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
PWK =
s::SegmentDef.build(:PWK, "Paperwork",
"To identify the type or transmission or both of paperwork or support information",
e::E755 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E756 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E757 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E98  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E66  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E67  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C002 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1525.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(5, 6))
QTY =
s::SegmentDef.build(:QTY, "Quantity Information",
"To specify quantity information",
e::E673.simple_use(r::Mandatory,   s::RepeatCount.bounded(1)),
e::E380.simple_use(r::Relational,  s::RepeatCount.bounded(1)),
e::C001.simple_use(r::Optional,    s::RepeatCount.bounded(1)),
e::E61 .simple_use(r::Relational,  s::RepeatCount.bounded(1)),

SyntaxNotes::R.build(2, 4),
SyntaxNotes::E.build(2, 4))
RDM =
s::SegmentDef.build(:RDM, "Remittance Delivery Method",
"To identify remittance delivery when remittance is separate from payment",
e::E756 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E93  .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E364 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C040 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C040 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
REF =
s::SegmentDef.build(:REF, "Reference Information",
"To specify identifying information",
e::E128 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E352 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C040 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::R.build(2, 3))
SBR =
s::SegmentDef.build(:SBR, "Subscriber Information",
"To record information specific to the primary insured and the insurance carrier for that insured",
e::E1138.simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
e::E1069.simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E93  .simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E1336.simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E1143.simple_use(r::Optional,  s::RepeatCount.bounded(1)),

e::E1073.simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E584 .simple_use(r::Optional,  s::RepeatCount.bounded(1)),
e::E1032.simple_use(r::Optional,  s::RepeatCount.bounded(1)))
STC =
s::SegmentDef.build(:STC, "Status Information",
"To report the status, required action, and paid information of a claim or service line",
e::C043 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E306 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E591 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E429 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C043 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C043 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E933 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
SV1 =
s::SegmentDef.build(:SV1, "Professional Service",
"To specify the service line item detail for a health care professional",
e::C003 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1331.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1365.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::C004 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1340.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E1364.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1341.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1327.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1334.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E116 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1337.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1360.simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::P.build(3, 4))
SV2 =
s::SegmentDef.build(:SV2, "Institutional Service",
"To specify the service line item detail for a health care institution",
e::E234 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C003 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1371.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1345.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1337.simple_use(r::Optional,   s::RepeatCount.bounded(1)))
SV3 =
s::SegmentDef.build(:SV3, "Dental Service",
"To specify the service line item detail for dental work",
e::C003 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1331.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C006 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1358.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E352 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1327.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1360.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E1073.simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C004 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
SV5 =
s::SegmentDef.build(:SV5, "Durable Medical Equipment Service",
"To specify the claim service detail for durable medical equipment",
e::C003 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E355 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E594 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E923 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

SyntaxNotes::R.build(4, 5),
SyntaxNotes::C.build(6, 5))
SVC =
s::SegmentDef.build(:SVC, "Service Payment Information",
"To supply payment and control information to a provider for a particular service",
e::C003 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::C003 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
SVD =
s::SegmentDef.build(:SVD, "Service Line Adjustment",
"To convey service line adjudication information for coordination of benefits between the initial payers of a health care claim and all subsequent payers",
e::E67  .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C003 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E234 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E554 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
TOO =
s::SegmentDef.build(:TOO, "Tooth Identification",
"To identify a tooth by number and, if applicable, one or more tooth surfaces",
e::E1270.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::E1271.simple_use(r::Relational, s::RepeatCount.bounded(1)),
e::C005 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
TRN =
s::SegmentDef.build(:TRN, "Trace",
"To uniquely identify a transaction to an application",
e::E481 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E509 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E127 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
TS2 =
s::SegmentDef.build(:TS2, "Transaction Supplemental Statistics",
"To supply supplemental summary control information by provider fiscal year and bill type",
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))
TS3 =
s::SegmentDef.build(:TS3, "Transaction Statistics",
"To supply provider-level control information",
e::E127 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E1331.simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E373 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Mandatory,  s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),

e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E380 .simple_use(r::Optional,   s::RepeatCount.bounded(1)),
e::E782 .simple_use(r::Optional,   s::RepeatCount.bounded(1)))