(高清版)GBT 27926.4-2021 金融服务 金融业通 用报文方案 第4部分:XML Schema生成_第1页
(高清版)GBT 27926.4-2021 金融服务 金融业通 用报文方案 第4部分:XML Schema生成_第2页
(高清版)GBT 27926.4-2021 金融服务 金融业通 用报文方案 第4部分:XML Schema生成_第3页
(高清版)GBT 27926.4-2021 金融服务 金融业通 用报文方案 第4部分:XML Schema生成_第4页
(高清版)GBT 27926.4-2021 金融服务 金融业通 用报文方案 第4部分:XML Schema生成_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GB/T27926.4—2021/ISO20022-4:2013代替GB/T27926.4—2011金融服务金融业通用报文方案第4部分XMLSchema生成Part4:XMLSchemageneration(ISO20022-4:2013,IDT)国家市场监督管理总局国家标准化管理委员会IGB/T27926.4—2021/ISO20022-4:2013 Ⅲ 12规范性引用文件 13术语和定义 1 15报文集的转换规则 2参考文献 ⅢGB/T27926.4—2021/ISO20022-4:2013本文件按照GB/T1.1—2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定起草。本文件是GB/T27926《金融服务金融业通用报文方案》的第4部分。GB/T27926已经发布了——第1部分:元模型;——第2部分:UML概况;——第3部分:建模导则;——第4部分:XMLSchema生成;——第6部分:报文传输特性;——第7部分:注册; 本文件代替GB/T27926.4—2011《金融服务金融业通用报文方案第4部分:XML设计规则》,b)增加了“报文集的转换规则”(见第5章);2011年版的第3章、第4章、附录A)。本文件使用翻译法等同采用ISO20022-4:2013《金融服务金融业通用报文方案第4部分:与本文件中规范性引用的国际文件有一致性对应关系的我国文件如下:——GB/T27926.1—2021金融服务金融业通用报文方案第1部分:元模型(ISO20022-1:2013,IDT)本文件由全国金融标准化技术委员会(SAC/TC180)归口。本文件及其所代替文件的历次版本发布情况为:——2011年首次发布为GB/T27926.4—2011;——本次为第一次修订。GB/T27926.4—2021/ISO20022-4:2013此,该文件采用了模型驱动的方法,其中行业报文集模型能够从报文技术的发展中独立分离出来。ISO20022伴随万维网在商业上的广泛采用而出现。可扩展标记语言(XML)以Web上文档表示形式GB/T27926由以下部分构成:——第1部分:元模型;——第3部分:建模导则;——第6部分:报文传输特性;——第8部分:ASN.1生成。 GB/T27926—2021《金融服务金融业通用报文方案》8个部分等同采用ISO20022—2013的8个各层到UML实现所涉及的元类属性,以便报文开发者更好地理解UML扩展集及其各层级——第3部分:建模导则。描述了为本文件产生模型的建模是针对第1部分、第2部分关于建模方面业务的具体实现。——第4部分:XMLSchema生成。目的是介绍XMLSchema生成规则,用于将逻辑层模型转换GB/T27926.4—2021/ISO20022-4:2013———第5部分:反向工程。涵盖了逻辑模型对齐——第6部分:报文传输特性。目的是介绍业务交易和报文定义所需要的报文传输系统的参数,明确报文不同传输模式下的参数差异。——第7部分:注册。描述了管理模型注册和物理语法实现的过程。目的是说明申请机构和注册——第8部分:ASN.1生成。该部分给出了ASN.1语法生成规则,以便通过ASN.1将逻辑层模型V1GB/T27926.4—2021/ISO20022-4:2013金融服务金融业通用报文方案本文件作为ISO20022元模型的补充,由ISO20022注册机构应用XML语法转换规则,将符合ISO20022的报文定义转换为XML模式,用于描述和验证XML报文。本文件规定了从第三层级到第四层级的转换规则。它是一个确定性的转换,意味着对于一个给定的报文定义其生成的XMLSchema是完全可预测的。既没有对转换本身的手动输入,也没有对转换结果的手动调整。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文本文件。ISO20022-1金融服务金融业通用报文方案第1部分:元模型(Financialservices—Universalfinancialindustrymessagescheme—Part1:Metamodel)RFC5141,查阅/getrfc.php?rfc=51413术语和定义ISO20022-1界定的术语和定义适用于本文件。4背景XML是W3C(万维网联盟)定义的标准,标准的ISO20022报文定义(即语法)可以用XML表示。XML为它在特定应用中的正确使用方式留下了很大的自由。因此,仅仅说明使用了XML不足以保证本文件包含了一系列XML设计规则,这些设计规则定义了报文定义如何转换为ISO20022XMLSchema。有效的XML文档(以下称为“XML实例”或“实例”)是所有具有关联描述且符合该描述中所表示本文件还通过具体说明如何将报文定义转换为XMLSchema来描述如何将报文集转换为XMLSchemas。XMLSchema将使用验证XMLSchema解析器自动验证给定的XML实例是否符合报文定义中描述的约束(或约束子集)。本文件仅限于解释如何将给定的报文定义映射到XML,不解释如何创建报文定义。相关信息见ISO20022-3。2GB/T27926.4—2021/ISO20022-4:2013除了RA管理的XML注释行,XMLSchema仅包含由XMLSchema解析器验证的XML实例的XMLSchema定义(XSD)元素位于它们的复杂类型内,但根元素复杂类型除外,具有全局属性。在ISO20022-3中。XMLSchema中使用了若干命名空间声明。a)目标命名空间是全部的XSD元素和类型所属的命名空间。URN(统一资源名称)应符合RFC5141,包括:●每个Schema特有的一部分,xsd:MessageDefinitionIdentifier,其结构和含义见ISO20022-3。<xs:schemaxmlns:xs="/2001/XMLSchema"xmlns="urn:iso;std;iso;20022;tech:xsd;camt.007.002.01"elementFormDefault="qualified"targetNamespace="urn;iso;std;iso:20022:tech:xsd:camt.007.002.01">示例2:ISO20022XML实例中的命名空间声明:<Doc:Documentxmlns:Doc="urn:iso:std:iso:20022:tech:xsd:camt.007.002.01"><Documentxmlns="urn:iso:std:iso:20022:tech:xsd:camt.007.002.01">3GB/T27926.4—2021/ISO20022-4:20135.5XML报文实例编码应采用UTF-8,并且应在文档的XML文档前缀中被标识为UTF-8。文档可将任意命名空间声明为默认。文档不应包含一个文档类型(DOCTYPE)声明。5.5.4Schema位置文档可声明任何Schema位置。然而,Schema应仅由命名空间解析而不是Schema位置。5.5.5XML名称缩写算法出现在XML实例中的XML元素和XML属性的名称派生于它们的报文定义名称(根据发布在XMLSchema是报文定义的表现形式。5.7方法报文定义由数量有限的独立的建模模式构成。报文元模型的描述,见ISO20022-1:2013的图7。通过定义从这些模式转换到XMLSchema的转换规则,任一报文定义可被转换成对应的5.7.2元模型概念和XMLSchema成果之间的关系每个报文集被转换成一个MIME类型应用程序/zip压缩文件,包含属于那个报文集的全部报文定义的XMLSchema。它也可包含与该报报文定义被转换为使用报文定义标识符作为文件名且后缀名为“.xsd”的XMLSchema文件。XMLSchema文档由以下元素组成。b)RA管理的XML注释行在5.2中定义。4GB/T27926.4—2021/ISO20022-4:2013c)XML元素“xs:schema”包含:●声明5.3中定义的命名空间的XML属性;d)XML元素“xs:element”e)XML元素“xs:complexType”,其中报文定义根元素的名称是XML属性“name”的值。XMLf)XML元素“xs:complexType”,其中报文定义的值是XML属性“name”的值。XML元素“xs:个XML元素“xs:element”,保留报文模块的顺序。报文模块的转换规则在中<?xmlversion="1.0"encoding="UTF-8"?>xs:schemaxmlns="urn:iso:std:iso:20022:tech:xsd:camt.040.001.02"targetNamespace="urn:iso:std:iso:20022:tech:xsd:camt.040.001.02"xmlns:xs="/2001/XMLSchema"elementFormDefault="qualified"><xs:elementname="Document"type="Document"/><xs:complexTypename="Document">xs;sequence><xs:elementname="NtfctnOfIntrst""type="NotificationOfInterestV02"/></xs:sequence></xs:complexType><xs:complexTypename="NotificationOfInterestV02"/></xs:schema>报文组件被转换成XML元素“xs:complexType”,其中报文组件的名称是XML属性“name”的值。XML元素“xs:complexType”包含:——XML元素“xs:sequence”。XML元素“xs:sequence”中,每一个报文5GB/T27926.4—2021/ISO20022-4:2013<xs:complexType<xs:sequence><xs:element<xs:element</xs:sequence></xs:complexType>name="PartyIdentification8">name="Nm"type="Max70text"minOccurs="0"maxOccurs="1"/>name="CtryOfRes"type="CountryCode"minOccurs="0"maxOccurs="1"/>选择组件被转换为XML元素“xs:complexType”,其中选择组件的名称是XML属性“name”的值。XML元素“xs:complexType”包含:——XML元素“xs:choice”。XML元素“xs:choice”中,每一个报文元素都被转换成XML元素<ChoiceComponent》Country:CountryCodeExchange:MICIdentifierParty:AnyBICIdentifierSetOverTheCounter:Max35Textxs:complexTypexs:choice><xs:element<xs:element<xs:element<xs:element</xs:choice></xs;complexType>name="PlaceOfTradeIdentification1Choice">name="Ctry"type="CountryCode"></xs:element>name="Xchg"type="MICIdentifier"></xs:element>name="Pty"type="AnyBICIdentifier"></xs:element>name="OverTheCntr"type="Max35Text"></xs:element>外部模式被转换为含有XML属性“name”的XML元素“xs:complexType”。外部模式的名称是XML属性“name”的值。XML元素“xs:complexType”包含XML元素“xs:sequence”,XML元素“xs:sequence”包含XML6GB/T27926.4—2021/ISO20022-4:2013——属性ProcessContents被复制到XML属性“processContents”中;-—属性Namespace被复制到XML属性“namespace”中。any”,且该“xs;any”的基数只有一个。《《MessageComponent》Trade0..1-TradingDataXMLSchema片段<xs:complexTypename="Trade"><xs:sequence><xs:elementname="TrdngDta"type="FIXInstructionType"minOccurs="0"maxOecurs="1"/></xs:complexType><xs:complexTypename="FIXInstructionType"><xs;anynamespace=""processContents="strict"/></xs:sequence></xs:complexType>报文元素被转换为XML元素“xs:element”。报文元素的顺序如报文组件类型中所定义,应被保留在相应的XMLSchema中。报文元素名称被用于创建(根据5.5.5中描述)XML元素“xs:element”的XML属性“name”的值。报文元素的基数:——MinimumOccurrence被复制到XML元素“xs:element”的XML属性“minOccurs”中;——MaximumOccurrence被复制到XML元素“xs:element”的XML属性“maxOccurs”中。报文元素类型的名称被复制到XML元素“xs:element”的XML属性“type”中。如果报文元素类型是一个XSD数据类型(见),则名称之前应加“xs:”。7GB/T27926.4—2021/ISO20022-4:2013报文模块报文联系端中的“isComposite”为“true”见报文元素的转换规则。报文联系端中的“isComposite”为“false”《《MessageDefinition》⑤NotificationOfInterestV0211四-CashACcountDetailsExtension1Type:Max35TextAccountOwner:AnyBICIdentifierSetAccountServicer:BICIdentfierSet-AdditionalCashDetails因《MessageComponent》<?xmlversion="1.0"encoding="UTF-8"?><xs:schemaxmlns="urn:iso:std:iso:20022:tech:xsd:camt.040.001.02"targetNamespace="urn;iso:std:iso;20022:tech;xsd:camt.040.001.02"xmlns:xs="/2001/XMLSchema"elementFormDefault="qualified"><xs:elementname="Document"type="Document"/><xs:complexTypename="Document"><xs:sequence><xs:elementname="NtfctOfIntrst"type="NotificationOfInterestV02"/></xs:sequence></xs:complexType><xs:complexTypename="NotificationOfInterestV02"><xs:sequence>xs:elementname="CshAcctDtls"type="CashAccountDetails3"/>xs;elementname="Xtnsnl"type="Extensionl"/></xs:sequence></xs:complexType>8GB/T27926.4—2021/ISO20022-4:2013<xs:complexTypename="Extensionl">xs:sequence><xs:elementname="Id"type="xs:ID"minOccurs="0"maxOccurs="1"/><xs;elementname="Txt"type="Max350Text"/></xs:sequence></xs:complexType><xs:complexTypename="CashAccountDetails3"><xs:sequence>xs;elementname="Nm"type="Max35Text"/><xs:elementname="Tp"type="Max35Text"/><xs:elementname="AcctOwnr"type="AnyBICIdentifierSet"/><xs:elementname="AccntSrvcr"type="AnyBICIdentifierSet"/>xs:elementname="AddtnlCshDtls"type="xs:IDREF"/></xs:sequence></xs:complexType></xs:schema>XML实例<?xmlversion="1.0"encoding="UTF-8"?><Documentxmlns="urn:iso:std:iso:20022:tech:xsd:camt.040.001.02"><NtfctOfIntrst><CshAcctDtls><Nm>A</Nm><AccntSrvcr>CHASUS33</AccntSrvcr><AddtnlCshDtls>ref1</AddtnlCshDtls></CshAcctDtls><Xtnsnl>Id>ref1</Id><Txt>additionalInfo</Txt></Xtnsnl></NtfctOfIntrst></Document>5.7.3ISO20022数据类型转换成XSDSchemaISO20022数据类型有两种,分别是XSD数据类型和用户自定义数据类型,两者有其各自的转换规则。注:见ISO20022-1:2013中的图7和图15。XSD数据类型XSD数据类型存储在元模型的“TypeLibrary”包下的“XML_Schema”子包中。每一个XSD数据类型名称被转换为XML属性“type”的值,XSD数据类型转换见表1。9GB/T27926.4—2021/ISO20022-4:2013表1XSD数据类型转换XSD数据类型名称XMLSchema的XML属性“type”字符串Xs:string布尔值xs:boolean十进制xs:decimal整数型xs:integer日期时间xs:dateTime基于64位二进制数xs:base64Binary持续时间xs:duration某日xs:gDay某月日Xs:gMonthDayxs:gMonth某年xs:gYear某年月xs:gYearMonthXs:date时间Xs:time标识符IDxs:ID<xs:complexTypename="Account8"><xs:sequence>xs;elementname="Id"type="xs;string"></xs;element></xs:sequence></xs:complexType>派生的数据类型是数据类型元类型的实例,具体见ISO20022-1,它并不是XSD内置的数据类型之一。派生的数据类型以XSD数据类型为基础。每个派生数据类型的XSD方面被表达为“元-属性”,这些方面的实际值以派生数据类型的属性提供。GB/T27926.4—2021/ISO20022-4:2013表2转换为XSD方面的数据类型属性数据类型样式长度最小长度最大长度最小包含于最大包含于最小不包含最大不包含总位数小数位数文本XXXX指示符X金额XXXxXXX数量XxXxXxX十进制XXxxxxx编码集XXxX标识符集XXxX比率XXXxXXX整型XXxxXX日期时间xXXxX日期XXXxX时间XXXxX间隔时间XXXXX日XXxXX月XXXXX年XXXXXXXXXX年月XXXxX二进制XXxx它包含具有以下内容的XML元素“xs:restriction”。——值为“xs:decimal”的XML属性“base”。——属性定义见表2,被转换为具有相同名称并且前缀为“xs:”的XSD方面,而且属性的值被复制到XSD限定的方面的属性“value”中。只有在其值不是空的情况下,属性才会被转换。金额被转换为XML元素“xs:complexType”。它包含:——XML属性“name”,值为金额。——XML元素“xs:simpleContent”,包含XML元素“xs:extension”,该元素包括如下内容。——XML属性“name”,具有值为货币标识符集的名称,本文件5.5.5缩写算法适用于该——XML属性“type”,具有值为货币标识符集类型的名称; XML属性“use”,值为“required”。ActiveCurrencyAndAmount<xs:simpleTypename="ActiveCurrencyAndAmount_SimpleType"><xs:restrictionbase="xs:decimal"><xs:minInclusivevalue="0"/><xs:totalDigitsvalue="18"/><xs:fractionDigitsvalue="5"/></xs:restriction></xs;simpleType>xs;simpleTypename="CurrencyCode">xs:restrictionbase="xs;string"><xs:patternvalue="[A-Z]{3,3}"/></xs:restriction></xs;simpleType><xs:complexTypename="ActiveCurrencyAndAmount"><xs:simpleContent><xs:extensionbase="ActiveCurrencyAndAmount_SimpleType"><xs:attributename="Ccy"use="required"type="CurrencyCode"/></xs:extension></xs:simpleContent></xs:complexType>金额被转换成XML元素“xs:simpleType”,包含:——XML属性“name”,值为数据类型金额。<xs:simpleTypename="AmountWithNoCurrency"><xs:restrictionbase="xs:decimal"><xs:minInclusivevalue="0"/><xs:totalDigitsvalue="18"/><xs:fractionDigitsvalue="5"/></xs:restriction></xs:simpleType>GB/T27926.4—2021/ISO20022-4:2013数量被转换成XML元素“xs:simpleType”,包含:——XML元素“xs:restriction”,包含:复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换)。<xs:simpleTypename="Number"><xs:restrictionbase="xs:decimal"><xs:minInclusivevalue="1"/><xs:maxInclusivevalue="100000"/></xs:restriction></xs;simpleType>代码集被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,值为代码集。——XML元素“xs:restriction”,包含:●如表2定义的属性,被转换为具有相同名称并且前缀为“xs:”的XSD方面,而且属性的值被复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换);枚举字符串规范的主体属性被复制到XSD枚举的值。《CodeSetLiteraboAgainstPayment《CodeSetLiteraboFreeofPayment<xs:simpleTypename="DeliveryReceiptTypelCodeSet"><xs:restrictionbase="xs:string"><xs:enumerationvalue="APMT"/>xs:enumerationvalue="FREE"/>xs:enumerationvalue="DSPA"/></xs:restriction></xs;simpleType>标识符集被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,值为标识符集。 XML元素“xs:restriction”,包含:复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换);图10<xs:simpleTypename="CUSIPIdentifierSet"><xs:restrictionbase="xs:string"><xs:patternvalue="[a-zA-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"/></xs:restriction></xs:simpleType>比率被转换为XML元素“xs:simpleType”,包含: 复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换);●转换属性baseValue和baseUnitCode。<xs:simpleTypename="PercentageRate"><xs:restrictionbase="xs:decimal"></xs:restriction></xs:simpleType>指示符被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,值为指示符。—-—XML元素“xs:restriction”,包含:GB/T27926.4—2021/ISO20022-4:2013复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换);●不转换属性meaningWhenFalse和meaningWhenTrue。<xs:simpleTypename="YesNoIndicator"><xs;restrictionbase="xs;boolean"></xs:simpleType>文本被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,其值为文本。复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换)。xs:simpleTypename="Max35Text"><xs:restrictionbase="xs:string"><xs:maxLengthvalue="35"/></xs:restriction></xs:simpleType>日期时间型被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,其值为日期时间型。 XML元素“xs:restriction”,包含:复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换)。《《DateTime》<xs:simpleTypename="ISODateTime"><xs:restrictionbase="xs:dateTime">GB/T27926.4—2021/ISO20022-4:2013</xs:restriction></xs:simpleType>有效的值的示例:时间型被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,其值为时间型。 XML元素“xs:restriction”,包含:图13<xs:simpleTypename="ISOTime"><Xs:restrictionbase="xs:time"></xs:restriction></xs;simpleType>日期被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,其值为日期。——XML元素“xs:restriction”,包含:图14<xs:simpleTypename="ISODate"><xs:restrictionbase="xs:date"></xs:restriction></xs:simpleType>.12数据类型间隔时间持续时间被转换为XML元素“xs:simpleType”,包含:GB/T27926.4—2021/ISO20022-4:2013——XML属性“name”,其值为持续时间。《Duration》<xs:simpleTypename="ISODuration"><xs:restrictionbase="xs:duration"></xs:restriction></xs:simpleType>.13数据类型年年被转换为XML元素“xs:simpleType”,包含:——XML属性“name”,值为年。——XML元素“xs:restriction”,包含:复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换)。《《Year》<xs:simpleTypename="ISOYear"><xs:restrictionbase="xs:gYear"></xs:restriction></xs:simpleType>——XML元素“xs:restriction”,包含:被复制到XSD方面的属性“value”中(只有在其值不是空的情况下,属性才会被转换)。示例:见图17。《《Month》图17<xs;simpleTypename="ISOMonth"><xs:restrictionbase="xs:gMonth"></xs;simpleType>日被转换为XML元素“xs:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论