生成FME模式特性
当请求模式特性时,XML Reader可以切换给定的xfMap和XML输入文档。这可以通过模式类型< >元素的<生成>元素。
的<生成>元素包含两个必需的属性xfMap和文档属性。它们指定在请求XML Reader提供模式特性时要使用的xfMap和XML文档。换句话说,XML Reader可以通过使用<生成>元素。
考虑以下输入XML文档。(是一样的points1.xml为方便起见,请在此复制之前使用过的文件。)
points1.xml
<?xml version = " 1.0 " encoding = " utf - 8 " ?>0.324 0.233 0.596 0.874 0.948 0.554
下面的xfMap文档,generate_points1.xmp中映射的元素points1.xml文件进入FME功能:
generate_points1.xmp
<?xml version = " 1.0 " ?>This xfMap document maps elements from the points1.xml document. <生成xfMap = " generate_points1_schemas。xmp generate_points1_schemas.xml“文档= /> <文字expr = "、" / > <提取expr = "。/颜色/绿色/ > <文字expr = "、" / > <提取expr = "。/color/blue"/> <文字expr = "、" / > <提取expr = "。/位置[@y] " / > < /数据> < /几何> < /映射> < /特征映射> < / xfMap >
当points1.xml和generate_points1.xmp输入XML Reader并请求FME数据特征,然后输出以下特征:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 功能类型:“点”属性(string):“颜色”值0.324,0.233,0.596的属性(字符串):“fme_geometry”价值“fme_point”属性(string):“数量”“0”属性值(字符串):“xml_type”有价值的xml_point几何类型:点坐标(1)号码:1——坐标尺寸:2——坐标系统:“(10,0 ) ================================================================== ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 功能类型:“点”属性(string):“颜色”值0.874,0.948,0.554的属性(字符串):“fme_geometry”价值“fme_point”属性(string):' 1 '属性“数量”值(字符串):“xml_type”有价值的xml_point几何类型:点坐标(1)数量:1——坐标尺寸:2——坐标系统:“(5,5 ) ==================================================================
请注意,generate_points1.xmpxfMap包含一个模式类型< >元素。它的子元素是<生成>元素的属性,xfMap和文档属性,表示xfMap (generate_points1_schemas.xmp)及XML文件(generate_points1_schemas.xml),在请求XML Reader获取模式特性时使用。
的generate_points1_schemas.xml文档包含一个<模式特性>元素;该元素描述了我们想要的FME数据特性的FME模式特性points1.xml文档通过generate_points1.xmpxfMap。
generate_points1_schemas.xml
<?xml version = " 1.0 " encoding = " utf - 8 " ?>
The的用法<生成>元素要求用户知道模式特征在FME中是如何表示的。每个FME模式特性必须有一个fme_geometry {}属性,列出模式特性的可能几何类型。对于XML Reader,fme_geometry {}属性列表:xml_no_geom,xml_text,xml_point,xml_line,xml_area,xml_text.如果一个主题或特征类型能够包含多个几何图形(例如,点、线和区域),则fme_geometry {}List属性应该包含3个成员:
fme_geometry {0} = " xml_point "
fme_geometry {1} = " xml_line "
fme_geometry {2} = " xml_area "
用户属性的类型,即属性的值,必须是预定义的FME类型之一:xml_char (#),xml_int16,xml_int32,xml_real32,xml_real64,xml_decimal (# #),或xml_boolean.
以下xfMapgenerate_points1_schemas.xmp地图的<模式特性>元素进入FME特性。
<?xml version = " 1.0 " ?>This xfMap document maps elements from the generate_points1_schema.xml document.
注意:没有什么规定xfMap生成_points1_schemas。XMP和generate_points1_schemas.xml文档应该采用上面示例的形式。使用
例子:
模式类型< > <生成xfMap = "模式。数据集xmp "文档= " # " / > < /模式类型>
#self标记可以用于
例子: