- 浏览: 481533 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
cloudfile:
谢谢分享!
MyEclipse配置Tomcat(图解) -
dotjar:
有效没?
治咳嗽秘方 -
jyslb:
设置密码长度大于10位,其中包含%$#&等符号,你这个 ...
奶瓶无线破解介绍 -
廖乐逍遥:
还是不行。。
eclipse里不支持泛型的解决方法 -
cue2008:
http://backtrack.unixheads.org/ ...
Intel 3945ABG无线网卡破解无线路由器密码 BT3
XML Anonymizer Bean in Communication Channel to remove namespace prefix in XML P
- 博客分类:
- SAP_PI
转:http://www.saptechnical.com/Tutorials/XI/XMLPayload/Index.htm
There are situations where additional functions are demanded to satisfy a requirement. The requirement could be to remove namespace prefix in XML Payload. Modules equipped in the adapter come for rescue without having the developer to do much.
The modules are the basis of the adapter configuration on the Parameters tab page, located in the module processor and are displayed in the module processor once a communication channel has been created.
A little about Namespaces…
One of the primary motivations for defining an XML namespace is to avoid naming conflicts when using and re-using multiple times. XML Schema is used to create vocabulary for an XML instance, and uses namespaces.
Namespaces are like package in Java, has many reusable elements and attributes.
For eg: <ns0:ShipNotice xmlns:ns0="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
In the attribute xmlns:ns0, xmlns is a reserved word, used to declare a namespace. That is the above example is read as binding the prefix ‘ns0’ with the namespace ‘urn:cidx:names:specification:ces:schema:all:4:0’.
It is convention in PI to use ns0 as the prefix for the XML Schema namespace. And wherever the prefix ‘ns0’ is used in the entire message, they are used only as a placeholder and must be expanded by the namespace. This way all the elements used in the message are associated to the namespace using the prefix.
The example message is given below, where every element (Header, DocumentIdentifier etc..) are associated with the namespace ‘urn:cidx:names:specification:ces:schema:all:4:0’.
<?xml version="1.0" encoding="UTF-8"?>
<ns0:ShipNotice xmlns:ns0="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
<ns0:Header>
<ns0:ThisDocumentIdentifier>
<ns0:DocumentIdentifier>0000000010576079</ns0:DocumentIdentifier>
</ns0:Header>
</ns0:ShipNotice>
However, business partner who receives this message may think that XML document is cluttered with prefix ns0 and want to avoid. Or it could be that the software used does not support this prefix and will not process the messages successfully. So now the requirement dictates the removal of prefix without removing the namespace. As explained, in PI it is possible to remove the namespace prefix using XML Anonymizer bean in module that is equipped in adapter.
Find below the screenshot that illustrates the configuration of the communication channel.
Procedure:
Add the Module in the Processing Sequence
1. Insert the module before the adapter module.
Module Name : AF_Modules/XMLAnonymizerBean
Module Key: 0
The module name ‘CallSapAdapter’ is default one that can be left as it is.
Add Parameters in the Module Configuration
2. Module Key: 0
Parameter Name: anonymizer.acceptNamespaces
Parameter Value: <namespace> ‘’
Enter a list of namespaces and their prefixes that are to be kept in the target XML document and to result a namespace without a prefix, enter ‘ ‘ (two single quotation marks).
3. Module Key: 0
Parameter Name: anonymizer.quote
Parameter Value: ‘
Here specify the character to be used to enclose the attribute values. The default value is ‘.
When scenario is executed, the target message contains the namespace with no prefix.
<?xml version="1.0" encoding="UTF-8"?>
<ShipNotice xmlns="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
<Header>
<ThisDocumentIdentifier>
<DocumentIdentifier>0000000010576079</DocumentIdentifier>
</Header>
</ShipNotice>
There are generic modules for adapters provided by SAP for different requirements. Navigate to http://help.sap.com/saphelp_nwpi711/helpdata/en/cd/5af7c0c994e24fb0d0088443513de2/frameset.htm for more details.
There are situations where additional functions are demanded to satisfy a requirement. The requirement could be to remove namespace prefix in XML Payload. Modules equipped in the adapter come for rescue without having the developer to do much.
The modules are the basis of the adapter configuration on the Parameters tab page, located in the module processor and are displayed in the module processor once a communication channel has been created.
A little about Namespaces…
One of the primary motivations for defining an XML namespace is to avoid naming conflicts when using and re-using multiple times. XML Schema is used to create vocabulary for an XML instance, and uses namespaces.
Namespaces are like package in Java, has many reusable elements and attributes.
For eg: <ns0:ShipNotice xmlns:ns0="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
In the attribute xmlns:ns0, xmlns is a reserved word, used to declare a namespace. That is the above example is read as binding the prefix ‘ns0’ with the namespace ‘urn:cidx:names:specification:ces:schema:all:4:0’.
It is convention in PI to use ns0 as the prefix for the XML Schema namespace. And wherever the prefix ‘ns0’ is used in the entire message, they are used only as a placeholder and must be expanded by the namespace. This way all the elements used in the message are associated to the namespace using the prefix.
The example message is given below, where every element (Header, DocumentIdentifier etc..) are associated with the namespace ‘urn:cidx:names:specification:ces:schema:all:4:0’.
<?xml version="1.0" encoding="UTF-8"?>
<ns0:ShipNotice xmlns:ns0="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
<ns0:Header>
<ns0:ThisDocumentIdentifier>
<ns0:DocumentIdentifier>0000000010576079</ns0:DocumentIdentifier>
</ns0:Header>
</ns0:ShipNotice>
However, business partner who receives this message may think that XML document is cluttered with prefix ns0 and want to avoid. Or it could be that the software used does not support this prefix and will not process the messages successfully. So now the requirement dictates the removal of prefix without removing the namespace. As explained, in PI it is possible to remove the namespace prefix using XML Anonymizer bean in module that is equipped in adapter.
Find below the screenshot that illustrates the configuration of the communication channel.
Procedure:
Add the Module in the Processing Sequence
1. Insert the module before the adapter module.
Module Name : AF_Modules/XMLAnonymizerBean
Module Key: 0
The module name ‘CallSapAdapter’ is default one that can be left as it is.
Add Parameters in the Module Configuration
2. Module Key: 0
Parameter Name: anonymizer.acceptNamespaces
Parameter Value: <namespace> ‘’
Enter a list of namespaces and their prefixes that are to be kept in the target XML document and to result a namespace without a prefix, enter ‘ ‘ (two single quotation marks).
3. Module Key: 0
Parameter Name: anonymizer.quote
Parameter Value: ‘
Here specify the character to be used to enclose the attribute values. The default value is ‘.
When scenario is executed, the target message contains the namespace with no prefix.
<?xml version="1.0" encoding="UTF-8"?>
<ShipNotice xmlns="urn:cidx:names:specification:ces:schema:all:4:0" Version="4.0">
<Header>
<ThisDocumentIdentifier>
<DocumentIdentifier>0000000010576079</DocumentIdentifier>
</Header>
</ShipNotice>
There are generic modules for adapters provided by SAP for different requirements. Navigate to http://help.sap.com/saphelp_nwpi711/helpdata/en/cd/5af7c0c994e24fb0d0088443513de2/frameset.htm for more details.
发表评论
-
Gateway Access Control Lists
2015-10-12 11:34 1154Source:http://wiki.scn.sap.com ... -
SLD_UC registration failes with return code 748
2015-10-12 09:44 2160The managed ABAP systems shoul ... -
SLD Related Gateway Serivces Unavaliable
2015-10-12 09:01 709转自:http://www.sapnew.com/212. ... -
JDBC/JMS driver deployment - now more forceMode=true
2012-11-07 19:36 1196转自:http://scn.sap.com/people ... -
JDBC Receiver Adatper的同步场景设计
2012-10-18 15:15 1048转自:http://scnblogs.techweb. ... -
Step-by-Step Guides - Connectivity > CIDX Message eStandards
2012-05-29 11:36 1294http://wiki.sdn.sap.com/wiki/di ... -
Chem XML Message eStandards and CIDX Scenario Part III
2012-05-25 00:32 913http://scn.sap.com/people/suraj ... -
Chem XML Message eStandards and CIDX Scenario development – Part II
2012-05-25 00:30 1069http://scn.sap.com/people/suraj ... -
Chem XML Message eStandards and CIDX Scenario – Part I
2012-05-25 00:28 1066http://scn.sap.com/people/suraj ... -
SLDDSUSER in SLD is getting Locked
2012-05-24 17:59 1187******* LOCAL to Solution Manag ... -
How to Start the Visual Administrator
2012-05-22 16:24 917http://help.sap.com/saphelp_nw7 ... -
利用XI同步调用(JDBC)oracle数据库的返回值。
2012-02-13 18:03 1106今天用CCBPM做一串业务操作,具体的操作是:我先异步更 ... -
XI/PI Tables LIST
2012-02-09 15:28 1041ABAP ABAP schema Database Trans ... -
(MID)com.sap.SOA.apt_rfc.0303
2012-02-02 11:51 794MessageID com.sap.SOA.apt_rfc.0 ... -
FAQ XI 3.0/ PI 7.0/ PI 7.1 RFC Adapter
2012-02-01 16:52 2387转自:http://www.saptechies.com/fa ... -
如何排查mapping报错。
2012-01-18 15:50 917XI/PI在开发过程中最容易也是出错最多的地位就是map ... -
RFC Sender to JDBC receiver scenario中值得注意的三个问题
2012-01-17 17:09 1379转自:http://scnblogs.techweb.com. ... -
copyValue用法
2012-01-05 15:24 1063copyValue目的就是实现可以取到一个LIST的任意值。 ... -
PI动态生成字段方法
2011-12-28 18:48 1046今天遇到这样一种情况,PI更新数据库时,有的字段是动态更新 ... -
PI插入数据库时关于日期与时间戳特殊用法
2011-12-28 09:53 2448由于PI传输数据是通过XML传输的,所以数据理论上都是S ...
相关推荐
DICOM Anonymizer用您分配的其他字符串替换文件夹(和子文件夹)中所有DICOM文件中的患者姓名。 批量工作且工作Swift。 支持数字索引。 匿名化是医学图像处理所必需的。
npx pg-anonymizer postgres://user:secret@localhost:1234/mydb -o dump.sql :index_pointing_up: 此命令需要pg_dump 。 安装PostgreSQL后可能已经安装了它。 指定要匿名的列列表 使用--list选项和以逗号分隔的...
资源来自pypi官网。 资源全名:ner-anonymizer-0.1.1.tar.gz
PostgreSQL匿名器这个命令行工具使PostgreSQL数据库匿名化变得容易。 它使用YAML定义文件来定义应对哪些表和字段进行匿名化,并提供各种匿名化方法。 内容使用多种方法匿名化数据级别条目上的PostgreSQL表(下表) ...
资源分类:Python库 所属语言:Python 资源全名:dj_anonymizer-0.5.0-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
$ npm install anonymizer-service 概要 为了使用该模块,您必须首先创建一个AWS账户。 拥有账户后,此模块中包含的工具将允许您将匿名服务Lambda函数部署到您的AWS账户,创建一个使用JSON进行数据交换以与Lambda...
该项目是滑铁卢大学安全课程 CS 458 作业的一部分。 它在一个数据集上进行多次传递,以通过使其类似于至少 k 个元素来确保没有单个数据点是可单独识别的。
资源分类:Python库 所属语言:Python 资源全名:django_anonymizer-0.5.1-py2.py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
隐身 混淆 LinkedIn.com 上的敏感会员数据
know.ai匿名器为了提高隐私并使公司更容易遵守GDPR,我们在.ai决定公开采购匿名软件和权重,以在内部数据集上对面Kong和车牌进行训练的模型进行采购。 为了使每个人都可以在自己的项目中轻松使用这些权重,使用对...
In all other cases you have to download all source libraries and compile them manually. SUPPORTED PLATFORMS ------------------- All UNIX platforms (linux, *bsd, solaris, etc.) Mac OS/X Windows ...
Thanks to its extensive feature-set, unparalleled stability and easiness of use, Sante DICOM Editor is the essential tool for Radiologists, medical imaging Professionals, and any other specialist that...
lina_anonymizer 基于流的文本匿名器 整体工作流程 graph TD; AA[annotator] --> |register rule-set|A A[strapi]-->|get regex|B[rule-entity-extractor server]; B --> |return matched result|C...
silverstripe-anonymizer 从数据库表匿名化PII
Anonymizer:RSNA临床试验数据集导入匿名程序
Myanon Myanon是一个MySQL转储匿名程序,它从stdin读取转储,并为stdout生成一个匿名版本。 匿名化通过基于sha-256的确定性hmac处理完成。 在用作外键的字段上使用时,将保留约束。 配置文件用于存储hmac机密并...
IQDA 数据匿名化工具非常适合希望将其研究成果发布到数字档案馆(例如 www.iqda.ie)的研究人员。 该代码正在开源,以证明您的成绩单在使用此工具时是安全的。
语言:English (United States) 帮助您避免聘请优秀开发人员所带来的内在偏见 帮助您避免雇用优秀的开发人员所带来的内在偏见。 功能包括:-删除个人资料图片-删除候选人姓名-将所有大学合并为“某处的大学”-
gem 'ip_anonymizer' 匿名IP有两种策略。 掩蔽 这是: 对于IPv4,将最后一个八位位组设置为0 对于IPv6,将最后80位设置为零 IpAnonymizer . mask_ip ( "8.8.4.4" ) # => "8.8.4.0" IpAnonymizer . mask_ip ( ...