Loading utils/oids/oid.md +64 −62 Original line number Diff line number Diff line Loading @@ -12,68 +12,70 @@ |[TS 102 657](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/102657)|[RDMessage](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/102657/RDMessage.asn?ref_type=heads)|33|securityDomain(2) retainedData(3) rdHeader(0)| |[TS 103 462](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103462)|[ILHIPDU](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103462/ILHIPDU.asn?ref_type=heads)|2|securityDomain(2) informationHandover(4) ilhi(0) ilhiPdu(0)| |[TS 103 280](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103280)|[Common-Parameters](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103280/TS_103_280.asn1?ref_type=heads)|261|common-parameters(3280)| # OID hierarchy ```mermaid graph TD; 0.4[identified-organization] itu-t-->identified-organization 0.4.0[etsi] identified-organization-->etsi 0.4.0.2[securityDomain] etsi-->securityDomain 0.4.0.2.2[lawfulIntercept] securityDomain-->lawfulIntercept 0.4.0.2.2.0[hi1] lawfulIntercept-->hi1 0.4.0.2.2.0.1[notificationOperations] hi1-->notificationOperations 0.4.0.2.2.0.1.7[version7] notificationOperations-->version7 0.4.0.2.2.1[hi2] lawfulIntercept-->hi2 0.4.0.2.2.1.18[version17] hi2-->version17 0.4.0.2.2.5[li-ps] lawfulIntercept-->li-ps 0.4.0.2.2.5.1[genHeader] li-ps-->genHeader 0.4.0.2.2.5.1.40[version40] genHeader-->version40 0.4.0.2.2.5.2[email] li-ps-->email 0.4.0.2.2.5.2.20[version20] email-->version20 0.4.0.2.2.5.3[iPAccess] li-ps-->iPAccess 0.4.0.2.2.5.3.20[version20] iPAccess-->version20 0.4.0.2.2.5.5[iPMultimedia] li-ps-->iPMultimedia 0.4.0.2.2.5.5.17[version17] iPMultimedia-->version17 0.4.0.2.2.5.6[pstnIsdn] li-ps-->pstnIsdn 0.4.0.2.2.5.6.6[version6] pstnIsdn-->version6 0.4.0.2.2.4[l2Access] lawfulIntercept-->l2Access 0.4.0.2.2.4.10[version10] l2Access-->version10 0.4.0.2.3[retainedData] securityDomain-->retainedData 0.4.0.2.3.0[rdHeader] retainedData-->rdHeader 0.4.0.2.3.0.33[version33] rdHeader-->version33 0.4.0.2.4[informationHandover] securityDomain-->informationHandover 0.4.0.2.4.0[ilhi] informationHandover-->ilhi 0.4.0.2.4.0.0[ilhiPdu] ilhi-->ilhiPdu 0.4.0.2.4.0.0.2[version2] ilhiPdu-->version2 0.4.0.3280[common-parameters] etsi-->common-parameters 0.4.0.3280.261[version261] common-parameters-->version261 .0["itu-t (0)"] 0.4["identified-organization (4)"] .0-->0.4 0.4.0["etsi (0)"] 0.4-->0.4.0 0.4.0.2["securityDomain (2)"] 0.4.0-->0.4.0.2 0.4.0.2.2["lawfulIntercept (2)"] 0.4.0.2-->0.4.0.2.2 0.4.0.2.2.0["hi1 (0)"] 0.4.0.2.2-->0.4.0.2.2.0 0.4.0.2.2.0.1["notificationOperations (1)"] 0.4.0.2.2.0-->0.4.0.2.2.0.1 0.4.0.2.2.0.1.7["version7 (7)"] 0.4.0.2.2.0.1-->0.4.0.2.2.0.1.7 0.4.0.2.2.1["hi2 (1)"] 0.4.0.2.2-->0.4.0.2.2.1 0.4.0.2.2.1.18["version17 (18)"] 0.4.0.2.2.1-->0.4.0.2.2.1.18 0.4.0.2.2.5["li-ps (5)"] 0.4.0.2.2-->0.4.0.2.2.5 0.4.0.2.2.5.1["genHeader (1)"] 0.4.0.2.2.5-->0.4.0.2.2.5.1 0.4.0.2.2.5.1.40["version40 (40)"] 0.4.0.2.2.5.1-->0.4.0.2.2.5.1.40 0.4.0.2.2.5.2["email (2)"] 0.4.0.2.2.5-->0.4.0.2.2.5.2 0.4.0.2.2.5.2.20["version20 (20)"] 0.4.0.2.2.5.2-->0.4.0.2.2.5.2.20 0.4.0.2.2.5.3["iPAccess (3)"] 0.4.0.2.2.5-->0.4.0.2.2.5.3 0.4.0.2.2.5.3.20["version20 (20)"] 0.4.0.2.2.5.3-->0.4.0.2.2.5.3.20 0.4.0.2.2.5.5["iPMultimedia (5)"] 0.4.0.2.2.5-->0.4.0.2.2.5.5 0.4.0.2.2.5.5.17["version17 (17)"] 0.4.0.2.2.5.5-->0.4.0.2.2.5.5.17 0.4.0.2.2.5.6["pstnIsdn (6)"] 0.4.0.2.2.5-->0.4.0.2.2.5.6 0.4.0.2.2.5.6.6["version6 (6)"] 0.4.0.2.2.5.6-->0.4.0.2.2.5.6.6 0.4.0.2.2.4["l2Access (4)"] 0.4.0.2.2-->0.4.0.2.2.4 0.4.0.2.2.4.10["version10 (10)"] 0.4.0.2.2.4-->0.4.0.2.2.4.10 0.4.0.2.3["retainedData (3)"] 0.4.0.2-->0.4.0.2.3 0.4.0.2.3.0["rdHeader (0)"] 0.4.0.2.3-->0.4.0.2.3.0 0.4.0.2.3.0.33["version33 (33)"] 0.4.0.2.3.0-->0.4.0.2.3.0.33 0.4.0.2.4["informationHandover (4)"] 0.4.0.2-->0.4.0.2.4 0.4.0.2.4.0["ilhi (0)"] 0.4.0.2.4-->0.4.0.2.4.0 0.4.0.2.4.0.0["ilhiPdu (0)"] 0.4.0.2.4.0-->0.4.0.2.4.0.0 0.4.0.2.4.0.0.2["version2 (2)"] 0.4.0.2.4.0.0-->0.4.0.2.4.0.0.2 0.4.0.3280["common-parameters (3280)"] 0.4.0-->0.4.0.3280 0.4.0.3280.261["version261 (261)"] 0.4.0.3280-->0.4.0.3280.261 ``` No newline at end of file utils/oids/oid.py +4 −16 Original line number Diff line number Diff line Loading @@ -110,29 +110,17 @@ for asn_file in asn_files: oid_tree = oid.root() else: oid_tree.merge(oid) # last_arc = None # last_tree = oid_tree # oid_str = "" # for arc in oids: # arc_parts = arc_regex.match(arc) # label = arc_parts[1] # index = arc_parts[2] # if arc in last_tree: # last_tree = last_tree[arc] # else: # last_tree[arc] = {} # last_tree = last_tree[arc] # last_arc = arc_parts markdown_string += f"|[{spec}](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/{'/'.join(asn_file.parts[:-1])})|{link}|{oid.value}|{relative_oids}|\n" def draw_tree(d : OIDArc): global markdown_string for child in d.children: markdown_string += f"{child.as_numerical()}[{child.label}]\n" markdown_string += f" {d.label}-->{child.label}\n" markdown_string += f'{child.as_numerical()}["{child.label} ({child.value})"]\n' markdown_string += f" {d.as_numerical()}-->{child.as_numerical()}\n" draw_tree(child) markdown_string += '```mermaid\ngraph TD;\n' markdown_string += "# OID hierarchy\n" markdown_string += '```mermaid\ngraph TD;\n .0["itu-t (0)"]\n' draw_tree(oid_tree) markdown_string += "```" Loading Loading
utils/oids/oid.md +64 −62 Original line number Diff line number Diff line Loading @@ -12,68 +12,70 @@ |[TS 102 657](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/102657)|[RDMessage](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/102657/RDMessage.asn?ref_type=heads)|33|securityDomain(2) retainedData(3) rdHeader(0)| |[TS 103 462](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103462)|[ILHIPDU](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103462/ILHIPDU.asn?ref_type=heads)|2|securityDomain(2) informationHandover(4) ilhi(0) ilhiPdu(0)| |[TS 103 280](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103280)|[Common-Parameters](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/103280/TS_103_280.asn1?ref_type=heads)|261|common-parameters(3280)| # OID hierarchy ```mermaid graph TD; 0.4[identified-organization] itu-t-->identified-organization 0.4.0[etsi] identified-organization-->etsi 0.4.0.2[securityDomain] etsi-->securityDomain 0.4.0.2.2[lawfulIntercept] securityDomain-->lawfulIntercept 0.4.0.2.2.0[hi1] lawfulIntercept-->hi1 0.4.0.2.2.0.1[notificationOperations] hi1-->notificationOperations 0.4.0.2.2.0.1.7[version7] notificationOperations-->version7 0.4.0.2.2.1[hi2] lawfulIntercept-->hi2 0.4.0.2.2.1.18[version17] hi2-->version17 0.4.0.2.2.5[li-ps] lawfulIntercept-->li-ps 0.4.0.2.2.5.1[genHeader] li-ps-->genHeader 0.4.0.2.2.5.1.40[version40] genHeader-->version40 0.4.0.2.2.5.2[email] li-ps-->email 0.4.0.2.2.5.2.20[version20] email-->version20 0.4.0.2.2.5.3[iPAccess] li-ps-->iPAccess 0.4.0.2.2.5.3.20[version20] iPAccess-->version20 0.4.0.2.2.5.5[iPMultimedia] li-ps-->iPMultimedia 0.4.0.2.2.5.5.17[version17] iPMultimedia-->version17 0.4.0.2.2.5.6[pstnIsdn] li-ps-->pstnIsdn 0.4.0.2.2.5.6.6[version6] pstnIsdn-->version6 0.4.0.2.2.4[l2Access] lawfulIntercept-->l2Access 0.4.0.2.2.4.10[version10] l2Access-->version10 0.4.0.2.3[retainedData] securityDomain-->retainedData 0.4.0.2.3.0[rdHeader] retainedData-->rdHeader 0.4.0.2.3.0.33[version33] rdHeader-->version33 0.4.0.2.4[informationHandover] securityDomain-->informationHandover 0.4.0.2.4.0[ilhi] informationHandover-->ilhi 0.4.0.2.4.0.0[ilhiPdu] ilhi-->ilhiPdu 0.4.0.2.4.0.0.2[version2] ilhiPdu-->version2 0.4.0.3280[common-parameters] etsi-->common-parameters 0.4.0.3280.261[version261] common-parameters-->version261 .0["itu-t (0)"] 0.4["identified-organization (4)"] .0-->0.4 0.4.0["etsi (0)"] 0.4-->0.4.0 0.4.0.2["securityDomain (2)"] 0.4.0-->0.4.0.2 0.4.0.2.2["lawfulIntercept (2)"] 0.4.0.2-->0.4.0.2.2 0.4.0.2.2.0["hi1 (0)"] 0.4.0.2.2-->0.4.0.2.2.0 0.4.0.2.2.0.1["notificationOperations (1)"] 0.4.0.2.2.0-->0.4.0.2.2.0.1 0.4.0.2.2.0.1.7["version7 (7)"] 0.4.0.2.2.0.1-->0.4.0.2.2.0.1.7 0.4.0.2.2.1["hi2 (1)"] 0.4.0.2.2-->0.4.0.2.2.1 0.4.0.2.2.1.18["version17 (18)"] 0.4.0.2.2.1-->0.4.0.2.2.1.18 0.4.0.2.2.5["li-ps (5)"] 0.4.0.2.2-->0.4.0.2.2.5 0.4.0.2.2.5.1["genHeader (1)"] 0.4.0.2.2.5-->0.4.0.2.2.5.1 0.4.0.2.2.5.1.40["version40 (40)"] 0.4.0.2.2.5.1-->0.4.0.2.2.5.1.40 0.4.0.2.2.5.2["email (2)"] 0.4.0.2.2.5-->0.4.0.2.2.5.2 0.4.0.2.2.5.2.20["version20 (20)"] 0.4.0.2.2.5.2-->0.4.0.2.2.5.2.20 0.4.0.2.2.5.3["iPAccess (3)"] 0.4.0.2.2.5-->0.4.0.2.2.5.3 0.4.0.2.2.5.3.20["version20 (20)"] 0.4.0.2.2.5.3-->0.4.0.2.2.5.3.20 0.4.0.2.2.5.5["iPMultimedia (5)"] 0.4.0.2.2.5-->0.4.0.2.2.5.5 0.4.0.2.2.5.5.17["version17 (17)"] 0.4.0.2.2.5.5-->0.4.0.2.2.5.5.17 0.4.0.2.2.5.6["pstnIsdn (6)"] 0.4.0.2.2.5-->0.4.0.2.2.5.6 0.4.0.2.2.5.6.6["version6 (6)"] 0.4.0.2.2.5.6-->0.4.0.2.2.5.6.6 0.4.0.2.2.4["l2Access (4)"] 0.4.0.2.2-->0.4.0.2.2.4 0.4.0.2.2.4.10["version10 (10)"] 0.4.0.2.2.4-->0.4.0.2.2.4.10 0.4.0.2.3["retainedData (3)"] 0.4.0.2-->0.4.0.2.3 0.4.0.2.3.0["rdHeader (0)"] 0.4.0.2.3-->0.4.0.2.3.0 0.4.0.2.3.0.33["version33 (33)"] 0.4.0.2.3.0-->0.4.0.2.3.0.33 0.4.0.2.4["informationHandover (4)"] 0.4.0.2-->0.4.0.2.4 0.4.0.2.4.0["ilhi (0)"] 0.4.0.2.4-->0.4.0.2.4.0 0.4.0.2.4.0.0["ilhiPdu (0)"] 0.4.0.2.4.0-->0.4.0.2.4.0.0 0.4.0.2.4.0.0.2["version2 (2)"] 0.4.0.2.4.0.0-->0.4.0.2.4.0.0.2 0.4.0.3280["common-parameters (3280)"] 0.4.0-->0.4.0.3280 0.4.0.3280.261["version261 (261)"] 0.4.0.3280-->0.4.0.3280.261 ``` No newline at end of file
utils/oids/oid.py +4 −16 Original line number Diff line number Diff line Loading @@ -110,29 +110,17 @@ for asn_file in asn_files: oid_tree = oid.root() else: oid_tree.merge(oid) # last_arc = None # last_tree = oid_tree # oid_str = "" # for arc in oids: # arc_parts = arc_regex.match(arc) # label = arc_parts[1] # index = arc_parts[2] # if arc in last_tree: # last_tree = last_tree[arc] # else: # last_tree[arc] = {} # last_tree = last_tree[arc] # last_arc = arc_parts markdown_string += f"|[{spec}](https://forge.etsi.org/rep/li/schemas-definitions/-/blob/main/{'/'.join(asn_file.parts[:-1])})|{link}|{oid.value}|{relative_oids}|\n" def draw_tree(d : OIDArc): global markdown_string for child in d.children: markdown_string += f"{child.as_numerical()}[{child.label}]\n" markdown_string += f" {d.label}-->{child.label}\n" markdown_string += f'{child.as_numerical()}["{child.label} ({child.value})"]\n' markdown_string += f" {d.as_numerical()}-->{child.as_numerical()}\n" draw_tree(child) markdown_string += '```mermaid\ngraph TD;\n' markdown_string += "# OID hierarchy\n" markdown_string += '```mermaid\ngraph TD;\n .0["itu-t (0)"]\n' draw_tree(oid_tree) markdown_string += "```" Loading