its.asn 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519
  1. ITS DEFINITIONS AUTOMATIC TAGS ::=
  2. BEGIN
  3. -- Message 부분 --
  4. ISO14827-MESSAGE ::= CLASS {
  5. &id OBJECT IDENTIFIER,
  6. &MessageBody
  7. }
  8. Message ISO14827-MESSAGE ::= {
  9. {&id {1 0 14827 1 1 1}, &MessageBody SEQUENCE OF CurrentLinkStateList} |
  10. {&id {1 0 14827 1 1 2}, &MessageBody SEQUENCE OF EventIdentityList} |
  11. {&id {1 0 15784 1 1 3}, &MessageBody SEQUENCE OF IncidentIdentityList}|
  12. {&id {1 0 14827 1 1 4}, &MessageBody SEQUENCE OF IncidentConditionsList}
  13. }
  14. --ISO14827-MESSAGE ::= CLASS {
  15. -- &name PrintableString (SIZE (0..255)),
  16. -- &definition PrintableString (SIZE (0..65535)),
  17. -- &remarks PrintableString (SIZE (0..2000)) OPTIONAL,
  18. -- &MessageBody,
  19. -- &messageType ENUMERATED
  20. -- {
  21. -- publication,
  22. -- subscription
  23. -- },
  24. -- &subscriptionType ENUMERATED
  25. -- {
  26. -- single ,
  27. -- event-driven,
  28. -- single-or-event,
  29. -- periodic,
  30. -- single-or-periodic,
  31. -- event-or-periodic,
  32. -- ingle-event-periodic
  33. -- } OPTIONAL,
  34. -- &initialPublication PrintableString (SIZE (0..255)) OPTIONAL,
  35. -- &subsequentPublications PrintableString (SIZE (0..255)) OPTIONAL,
  36. -- &id OBJECT IDENTIFIER
  37. --}
  38. EndApplicationMessage ::= SEQUENCE {
  39. endApplication-Message-id ISO14827-MESSAGE.&id,
  40. endApplication-Message-msg ISO14827-MESSAGE.&MessageBody
  41. }
  42. DatexDataPacket ::= SEQUENCE {
  43. datex-Version-number ENUMERATED
  44. {
  45. experimental (0),
  46. version1 (1),
  47. ...
  48. },
  49. datex-Data OCTET STRING,
  50. datex-Crc-nbr OCTET STRING (SIZE (2))
  51. }
  52. C2CAuthenticatedMessage ::= SEQUENCE {
  53. datex-AuthenticationInfo-text OCTET STRING (SIZE (0..255)),
  54. datex-DataPacket-number INTEGER (0..4294967295),
  55. datex-DataPacketPriority-number INTEGER (0..10),
  56. options HeaderOptions,
  57. pdu PDUs
  58. }
  59. HeaderOptions ::= SEQUENCE {
  60. datex-Origin-text UTF8String (SIZE (0..40)) OPTIONAL,
  61. datex-OriginAddress-location OCTET STRING OPTIONAL,
  62. datex-Sender-text UTF8String (SIZE (0..40)) OPTIONAL,
  63. datex-SenderAddress-location OCTET STRING OPTIONAL,
  64. datex-Destination-text UTF8String (SIZE (0..40)) OPTIONAL,
  65. datex-DestinationAddress-location OCTET STRING OPTIONAL,
  66. datex-Cost Cost OPTIONAL,
  67. datex-DataPacket-time Time OPTIONAL
  68. }
  69. Cost ::= SEQUENCE {
  70. amount-Currency-code OCTET STRING (SIZE (3)),
  71. amount-Factor-quantity INTEGER,
  72. amount-Quantity-quantity INTEGER
  73. }
  74. PDUs ::= CHOICE {
  75. datex-Initiate-null Initiate,
  76. login Login,
  77. fred FrED,
  78. terminate Terminate,
  79. logout Logout,
  80. subscription Subscription,
  81. publication Publication,
  82. transfer-done TransferDone,
  83. accept Accept,
  84. reject Reject
  85. }
  86. Initiate ::= SEQUENCE {
  87. datex-Sender-txt UTF8String (SIZE (0..40)),
  88. datex-Destination-txt UTF8String (SIZE (0..40))
  89. }
  90. Login ::= SEQUENCE {
  91. datex-Sender-txt UTF8String (SIZE (0..40)),
  92. datex-Destination-txt UTF8String (SIZE (0..40)),
  93. datexLogin-UserName-txt OCTET STRING,
  94. datexLogin-Password-txt OCTET STRING,
  95. datexLogin-EncodingRules-id SEQUENCE OF OBJECT IDENTIFIER,
  96. datexLogin-HeartbeatDurationMax-qty INTEGER (0..65535),
  97. datexLogin-ResponseTimeOut-qty INTEGER (0..255),
  98. datexLogin-Initiator-cd ENUMERATED
  99. {
  100. serverInitiated,
  101. clientInitiated,
  102. ...
  103. },
  104. datexLogin-DatagramSize-qty INTEGER (0..65535)
  105. }
  106. FrED ::= INTEGER(0..4294967295) -- datexFrED-ConfirmPacket-nbr
  107. Terminate ::= ENUMERATED { -- datexTerminate-Reason-cd
  108. other,
  109. serverRequested,
  110. clientRequested,
  111. serverShutdown,
  112. clientShutdown,
  113. serverCommProblems,
  114. clientCommProblems,
  115. ...
  116. }
  117. Logout ::= ENUMERATED { -- datexLogout-Reason-cd
  118. other,
  119. serverRequested,
  120. clientRequested,
  121. serverShutdown,
  122. clientShutdown,
  123. serverCommProblems,
  124. clientCommProblems,
  125. ...
  126. }
  127. Subscription ::= SEQUENCE {
  128. datexSubscribe-Serial-nbr INTEGER (0..4294967295),
  129. datexSubscribe-Type SubscriptionType,
  130. ...
  131. }
  132. --SubscriptionType-PR ::= ENUMERATED {
  133. -- subscription-type-pr-nothing,
  134. -- subscription-type-pr-subscription,
  135. -- subscription-type-pr-datex-subscribe-cancel-reason-cd,
  136. -- ...
  137. --}
  138. --SubscriptionType ::= SEQUENCE {
  139. --present SubscriptionType-PR,
  140. --present INTEGER (1..10),
  141. -- choice SubscriptionType-U
  142. --}
  143. SubscriptionType ::= CHOICE {
  144. subscription SubscriptionData,
  145. datexSubscribe-CancelReason-cd ENUMERATED {
  146. other,
  147. dataNotNeeded,
  148. errorsInPublication,
  149. pendingLogout,
  150. processingMgmt,
  151. bandwidthMgmt,
  152. ...
  153. }
  154. }
  155. SubscriptionData ::= SEQUENCE {
  156. datexSubscribe-Persistent-bool BOOLEAN,
  157. datexSubscribe-Status-cd ENUMERATED
  158. {
  159. new,
  160. update
  161. },
  162. datexSubscribe-Mode SubscriptionMode,
  163. datexSubscribe-PublishFormat-cd ENUMERATED
  164. {
  165. other,
  166. ftp,
  167. tftp,
  168. dataPacket,
  169. ...
  170. },
  171. datexSubscription-Priority-nbr INTEGER (1..10),
  172. datexSubscribe-Guarantee-bool BOOLEAN,
  173. datexSubscribe-Pdu EndApplicationMessage
  174. }
  175. SubscriptionMode ::= CHOICE {
  176. single NULL,
  177. event-driven Registered,
  178. periodic Registered
  179. }
  180. Registered ::= CHOICE {
  181. continuous SEQUENCE
  182. {
  183. datexRegistered-UpdateDelay-qty INTEGER(0..424967295) DEFAULT 0,
  184. -- 0 means as soon as possible
  185. datexRegistered-StartTime Time OPTIONAL,
  186. -- defaults to immediate
  187. datexRegistered-EndTime Time OPTIONAL
  188. -- defaults to "until cancelled"
  189. },
  190. daily SEQUENCE
  191. {
  192. datexRegistered-UpdateDelay-qty INTEGER(0..424967295) DEFAULT 0,
  193. -- 0 means as soon as possible
  194. datexRegistered-DaysOfWeek-cd BIT STRING
  195. {
  196. other(0),
  197. sunday(1),
  198. monday(2),
  199. tuesday(3),
  200. wednesday(4),
  201. thursday(5),
  202. friday(6),
  203. saturday(7)
  204. }(SIZE (8)),
  205. datexRegistered-StartDate Time OPTIONAL,
  206. -- defaults to immediate
  207. datexRegistered-EndDate Time OPTIONAL,
  208. -- defaults to "until cancelled"
  209. datexRegistered-StartTime Time OPTIONAL,
  210. -- defaults to midnight
  211. datexRegistered-Duration-qty INTEGER(0..65535) OPTIONAL
  212. -- defaults to 1440 (i.e., 24 hours)
  213. }
  214. }
  215. Time ::= SEQUENCE {
  216. time-Year-qty INTEGER(-32768..32767) OPTIONAL,
  217. -- defaults to current year unless otherwise specified
  218. time-Month-qty INTEGER (1..12) OPTIONAL,
  219. -- defaults to current month unless otherwise specified
  220. time-Day-qty INTEGER (1..31) OPTIONAL,
  221. -- defaults to current day unless otherwise specified
  222. time-Hour-qty INTEGER (0..23) DEFAULT 0,
  223. time-Minute-qty INTEGER (0..59) DEFAULT 0,
  224. time-Second-qty INTEGER (0..60) DEFAULT 0,
  225. time-SecondFractions CHOICE
  226. {
  227. deci-seconds INTEGER (0..9),
  228. centi-seconds INTEGER (0..99),
  229. milliseconds INTEGER (0..999),
  230. ...
  231. } DEFAULT {0},
  232. time-Timezone SEQUENCE
  233. {
  234. timezone-Hour-qty INTEGER (-13..13) DEFAULT 0,
  235. time-Minute-qty INTEGER (0..59) DEFAULT 0
  236. } OPTIONAL
  237. -- defaults to UTC
  238. }
  239. Publication ::= SEQUENCE {
  240. datexPublish-Guaranteed-bool BOOLEAN,
  241. datexPublish-Format Publish-Format
  242. }
  243. Publish-Format ::= CHOICE {
  244. datexPublish-Data SEQUENCE OF PublicationData,
  245. datexPublish-FileName-txt UTF8String (SIZE (0..2000))
  246. }
  247. PublicationData ::= SEQUENCE {
  248. datexPublish-SubscribeSerial-nbr INTEGER (0..4294967295),
  249. datexPublish-Serial-nbr INTEGER (0..4294967295),
  250. datexPublish-LatePublicationFlag BOOLEAN,
  251. datexPublish-Type PublicationType
  252. }
  253. PublicationType ::= CHOICE {
  254. datexPublication-Management-cd ENUMERATED
  255. {
  256. temporarilySuspended,
  257. resume,
  258. terminate-other,
  259. terminate-dataNoLongerAvailable,
  260. terminate-publicationsBeingRejected,
  261. terminate-PendingShutdown,
  262. terminate-processingMgmt,
  263. terminate-bandwidthMgmt,
  264. terminate-accessDenied,
  265. unknownRequest,
  266. ...
  267. },
  268. datexPublish-Data EndApplicationMessage
  269. }
  270. TransferDone ::= SEQUENCE
  271. {
  272. datexTransferDone-Publication-nbr INTEGER (0..4294967295),
  273. datexTransferDone-FileName-txt UTF8String (SIZE (0..2000)),
  274. datexTransferDone-Sucess-bool BOOLEAN
  275. }
  276. Accept ::= SEQUENCE
  277. {
  278. datexAccept-Packet-nbr INTEGER (0..4294967295),
  279. datexAccept-Type CHOICE
  280. {
  281. logIn OBJECT IDENTIFIER,
  282. single-subscription NULL,
  283. registered-subscription INTEGER (0..4294967295),
  284. publication NULL
  285. }
  286. }
  287. Reject ::= SEQUENCE {
  288. datexReject-Packet-nbr INTEGER (0..4294967295),
  289. datexReject-Type RejectType,
  290. datexReject-AlternateRequest AlternateRequest OPTIONAL
  291. }
  292. RejectType ::= CHOICE {
  293. datexReject-Login-cd ENUMERATED
  294. {
  295. other,
  296. unknownDomainName,
  297. accessDenied,
  298. invalidNamePassword,
  299. timeoutTooSmall,
  300. timeoutTooLarge,
  301. heartbeatTooSmall,
  302. heartbeatTooLarge,
  303. sessionExists,
  304. maxSessionsReached,
  305. ...
  306. },
  307. datexReject-Subscription-cd ENUMERATED
  308. {
  309. other,
  310. unknownSubscriptionNbr,
  311. invalidTimes,
  312. frequencyTooSmall,
  313. frequencyTooLarge,
  314. invalid-mode,
  315. publishFormatNotSupported,
  316. unknowSubscriptionMsgId,
  317. invalidSubscriptionMsgId,
  318. invalidSubscriptionContent,
  319. ...
  320. },
  321. datexReject-Publication-cd ENUMERATED
  322. {
  323. other,
  324. unknownSubscription,
  325. unknownPublicationNbr,
  326. invalidPublishFormat,
  327. unknownPublicationMsgId,
  328. invalidPublicationMsgId,
  329. invalidPublicationMsgContent,
  330. repeatedPublicationNbr,
  331. ...
  332. }
  333. }
  334. AlternateRequest ::= SubscriptionType
  335. -- 교통소통정보
  336. CurrentLinkStateList::=SEQUENCE OF CurrentLinkState
  337. CurrentLinkState ::= SEQUENCE
  338. {
  339. link-LinkIdNumber UTF8String(SIZE(1..40)),
  340. link-SpeedRate INTEGER(0..300),
  341. link-VolumeRate INTEGER(0..100000) OPTIONAL,
  342. link-DensityRate INTEGER(0..2000) OPTIONAL,
  343. link-TravelTimeQuantity INTEGER(0..10800) OPTIONAL,
  344. link-DelayQuanity INTEGER(0..12000) OPTIONAL,
  345. tfdt-VehicleQueueLengthQuantity INTEGER(0..500000) OPTIONAL,
  346. tfdt-OccupancyPercent INTEGER(0..100)
  347. }
  348. -- 교통통제정보
  349. EventIdentityList::=SEQUENCE OF EventIdentity
  350. EventIdentity ::= SEQUENCE
  351. {
  352. node-NodeIdNumber UTF8String(SIZE(1..40)),
  353. link-LinkIdNumber UTF8String(SIZE(1..40)),
  354. evnt-IdentificationNumber INTEGER(0..4294967295) OPTIONAL,
  355. evnt-LocationJurisdictionNameText UTF8String (SIZE(1..256)),
  356. evnt-LocationLinkIdNumber UTF8String(SIZE(1..40)),
  357. evnt-LocationNodeIdNumber UTF8String(SIZE(1..40)),
  358. evnt-LocationRoadwayNameText UTF8String (SIZE(1..256)),
  359. evnt-DescriptionTypeEventCode ENUMERATED
  360. {
  361. none (0),
  362. other (1),
  363. constructions (2),
  364. planned-roadway-closure (3),
  365. special-event (4)
  366. } OPTIONAL,
  367. evnt-DescriptionTypeSpecialEventCode ENUMERATED
  368. {
  369. none (0),
  370. other (1),
  371. parade (2),
  372. sporting-event (3),
  373. demonstration (4),
  374. festival (5),
  375. performing-arts (6),
  376. dignitary-visit (7)
  377. } OPTIONAL,
  378. evnt-DescriptionPlannedRoadwayClosureCode ENUMERATED
  379. {
  380. none (0),
  381. other (1),
  382. long-term-construction (2),
  383. short-term-construction (3),
  384. maintenance (4),
  385. emergency-maintenance (5)
  386. } OPTIONAL,
  387. evnt-LanesBlockedOrClosedNumber INTEGER (0..255),
  388. evnt-LanesShouldersBlockedCode BIT STRING
  389. {
  390. none (0),
  391. other (1),
  392. right-shoulder (2),
  393. left-shoulder (3),
  394. both-shoulder (4)
  395. },
  396. evnt-TimelineStartGeneralizedTime VisibleString,
  397. evnt-TimelineEndGeneralizedTime VisibleString,
  398. evnt-TimelineDurationTime INTEGER(0..4294967295)
  399. }
  400. -- 돌발상황정보
  401. IncidentConditionsList::=SEQUENCE OF IncidentConditions
  402. IncidentConditions ::= SEQUENCE
  403. {
  404. node-NodeIdNumber UTF8String(SIZE(1..40)),
  405. link-LinkIdNumber UTF8String(SIZE(1..40)),
  406. orgn-ContactOrganizationNameText UTF8String(SIZE(1..128)),
  407. evnt-DescriptionTypeIncidentCode ENUMERATED
  408. {
  409. other-no-additional-information-required (0),
  410. other-additional-information-required (1),
  411. vehicular-accident (2),
  412. weather-related-incident (3),
  413. stalled-vehicle (4),
  414. vehicle-fire (5),
  415. roadway-debris (6),
  416. hazmat-spill (7),
  417. earthquake (8),
  418. landslide (9),
  419. flood (10),
  420. typhoon (11),
  421. unplanned-demonstration (12),
  422. increased-traffic-volume (13)
  423. },
  424. evnt-DescriptionTypeIncidentOther UTF8String(SIZE(1..256)) OPTIONAL,
  425. evnt-IncidentVehiclesInvolvedCode BIT STRING
  426. {
  427. other-no-additional-information-required (0),
  428. other-additional-information-required (1),
  429. cycle-motorcycle (2),
  430. car (3),
  431. bus (4),
  432. single-Unit-Truck (5),
  433. trailer (6)
  434. },
  435. evnt-IncidentVehiclesInvolvedOther UTF8String(SIZE(1..256)) OPTIONAL,
  436. evnt-IncidentStatusCode ENUMERATED
  437. {
  438. other-no-additional-information-required (0),
  439. other-additional-information-required (1),
  440. incident-detected (2),
  441. confirmed-and-responding (3),
  442. cleared-and-recovering (4),
  443. over-and-done (5),
  444. other (6)
  445. },
  446. evnt-IncidentStatusOther UTF8String(SIZE(1..256)) OPTIONAL,
  447. evnt-UpdateTypeCode ENUMERATED
  448. {
  449. other-no-additional-information-required (0),
  450. other-additional-information-required (1),
  451. new (2),
  452. update (3),
  453. delete (4),
  454. clear-or-closed (5)
  455. },
  456. evnt-UpdateTypeOther UTF8String(SIZE(1..256)) OPTIONAL
  457. }
  458. -- 돌발정보
  459. IncidentIdentityList::=SEQUENCE OF IncidentIdentity
  460. IncidentIdentity ::= SEQUENCE
  461. {
  462. node-NodeIdNumber UTF8String(SIZE(1..40)),
  463. link-LinkIdNumber UTF8String(SIZE(1..40)),
  464. evnt-LocationLinearDistanceOffsetBeginNumber INTEGER(0..999) OPTIONAL,
  465. evnt-LocationLinearDistanceOffsetEndNumber INTEGER(0..999) OPTIONAL,
  466. evnt-UpdateGeneralizedTime VisibleString,
  467. evnt-IncidentHumanFatalitiesCountQuantity INTEGER(0..255) OPTIONAL,
  468. evnt-IncidentHumanInjuriesCountQuantity INTEGER(0..255) OPTIONAL,
  469. evnt-IncidentPropertyDamageCode BIT STRING
  470. {
  471. other-no-additional-information-required (0),
  472. other-additional-information-required (1),
  473. guard-rail-damage (2),
  474. light-pole-damage (3),
  475. pavement-damage (4),
  476. structure-damage (5),
  477. traffic-equipment-damage (6)
  478. },
  479. evnt-IncidentPropertyDamageOther UTF8String(SIZE(1..256)) OPTIONAL
  480. }
  481. END