• 树型数据结构设计处理


    怎么解析?
    树型数据结构设计处理:
    3个表来吧!
    (1)one subnetwork
    SubNetwork | Attribute[] | Container[]
    string | Guid1,Guid2,Guid3 | Guid1,Guid2,Guid3
    依次排列 依次排列

    (2)one container(container a id)
    Identity | IdPath | Attribute[]
    Guid | Id1^Id2^Id3 | Guid1,Guid2,Gui3
    层次关系 依次排列

    (3)one attribute
    Identity | vsDataType | vsDataFormateVersion | vsDataPlmn
    Guid | | | Name1=Valule1,Name2=Valule2,Name3=Valule3
    依次排列

    怎么解析?
    树型数据结构设计处理:
    3个表来吧!
    (1)one subnetwork
    SubNetwork | Attribute[]    | Container[]
    string     | Guid1,Guid2,Guid3  | Guid1,Guid2,Guid3
             依次排列         依次排列
     
    (2)one container(container a id)
    Identity | IdPath   | Attribute[]
    Guid     | Id1^Id2^Id3  | Guid1,Guid2,Gui3
           层次关系   依次排列
     
    (3)one attribute
    Identity | vsDataType | vsDataFormateVersion | vsDataPlmn
    Guid     |        |              | Name1=Valule1,Name2=Valule2,Name3=Valule3
                               依次排列

    数据实例:

    <xn:SubNetwork id="ONRM_RootMo_R">
                <xn:attributes>
                    <xn:userDefinedNetworkType></xn:userDefinedNetworkType>
                    <xn:userLabel>ONRM_RootMo_R</xn:userLabel>
                </xn:attributes>
                <xn:VsDataContainer id="1">
                    <xn:attributes>
                        <xn:vsDataType>vsDataAreas</xn:vsDataType>
                        <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                        <es:vsDataAreas/>
                    </xn:attributes>
                    <xn:VsDataContainer id="1_1_2">
                        <xn:attributes>
                            <xn:vsDataType>vsDataPlmn</xn:vsDataType>
                            <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                            <es:vsDataPlmn>
                                <es:userLabel></es:userLabel>
                                <es:mcc>1</es:mcc>
                                <es:mnc>1</es:mnc>
                                <es:mncLength>2</es:mncLength>
                                <es:aliasPlmnIdentities></es:aliasPlmnIdentities>
                            </es:vsDataPlmn>
                        </xn:attributes>
                    </xn:VsDataContainer>
                    <xn:VsDataContainer id="214_3_2">
                        <xn:attributes>
                            <xn:vsDataType>vsDataPlmn</xn:vsDataType>
                            <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                            <es:vsDataPlmn>
                                <es:userLabel></es:userLabel>
                                <es:mcc>214</es:mcc>
                                <es:mnc>3</es:mnc>
                                <es:mncLength>2</es:mncLength>
                                <es:aliasPlmnIdentities></es:aliasPlmnIdentities>
                            </es:vsDataPlmn>
                        </xn:attributes>
                        <xn:VsDataContainer id="14122">
                            <xn:attributes>
                                <xn:vsDataType>vsDataLocationArea</xn:vsDataType>
                                <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                                <es:vsDataLocationArea>
                                    <es:userLabel></es:userLabel>
                                    <es:lac>14122</es:lac>
                                    <es:t3212>10</es:t3212>
                                    <es:att>1</es:att>
                                </es:vsDataLocationArea>
                            </xn:attributes>
                            <xn:VsDataContainer id="1">
                                <xn:attributes>
                                    <xn:vsDataType>vsDataRoutingArea</xn:vsDataType>
                                    <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                                    <es:vsDataRoutingArea>
                                        <es:userLabel></es:userLabel>
                                        <es:rac>1</es:rac>
                                        <es:nmo>1</es:nmo>
                                    </es:vsDataRoutingArea>
                                </xn:attributes>
                            </xn:VsDataContainer>
                            <xn:VsDataContainer id="3043">
                                <xn:attributes>
                                    <xn:vsDataType>vsDataServiceArea</xn:vsDataType>
                                    <xn:vsDataFormatVersion>EricssonSpecificAttributes.11.26</xn:vsDataFormatVersion>
                                    <es:vsDataServiceArea>
                                        <es:userLabel></es:userLabel>
                                        <es:sac>3043</es:sac>
                                    </es:vsDataServiceArea>
                                </xn:attributes>
                            </xn:VsDataContainer>

    可以透露的是:

    最终的实现还是用的是ParentId这样的设计,因为递归的层次大多很浅。

    所以使用ParentId+不同的处理点枚举自动识别处理也很简单。

  • 相关阅读:
    ubuntu 14.04 安装gvim 后报出warning
    ubuntu 如何搭建svn 服务器
    如何为wordpress 添加favicon
    如何为wordpress 的文章添加分页
    ubuntu 如何添加alias
    wordpress 如何防止盗链
    ubuntu 14.04 如何设置静态ip
    钉钉与金蝶ERP对接开发方式
    金蝶组件无法正常工作
    金蝶补丁安装失败
  • 原文地址:https://www.cnblogs.com/hongjiumu/p/2827326.html
Copyright © 2020-2023  润新知