XSLT-访问键';s按索引-例如,在慕尼黑分组中 枫树大道2638号 帕多瓦 WI 53701 229000 2层当代、过渡 2328 2 1/2 4. 2辆汽车,随附 22 非常好的家在一个街区的死胡同附近有树林。 非常特殊的安静和隐私的位置!家庭特色开放式平面图,带有 大房间-通往美丽庭院的新天井门。更新:木瓦、乙烯基墙板、, 冰箱和洗碗机,车库门。家庭房间的壁炉两侧是巨大的 内置的。增加一楼洗衣房和屡获殊荣的帕多瓦学校。 布罗克斯顿 ... 卡特勒 ... 阿盖尔 ... 斯特拉特莫尔 ... 帕多瓦 ... 奥索拉 ... 芬莫尔 ... 卡特勒 ... 帕多瓦 ... 卡特勒 ... 奥索拉 ...
在我的教科书(Patrick Carey编写的XML第二版)中,它提供了一个使用“Muenchian分组”查找唯一选择的示例。我不明白的是: 到了这里,在这个例子的发展过程中,它指出: 属性[generate-id()=generate-id(key(“cityNames”,“Cutler”)[1])] “这表示由于索引为“[1]”,将在选择中找到第一个“Cutler”。给定上述XML,将返回“Cutler” 现在,该示例前进到如下: 属性[generate-id()=generate-id(key(“cityNames”,city)[1])] “也就是说,这将找到钥匙内每个城市的第一个也是唯一的第一个(因此是唯一的)。创造一组独特的价值观的所有城市的内部。上面给出的XML将返回“Argyle Broxton Cutler Fenmore Padua Stratmore Oseola”(注意没有倍数) 现在,我的问题是:为什么第二条语句返回一个范围的值,而不是一个XSLT-访问键';s按索引-例如,在慕尼黑分组中 枫树大道2638号 帕多瓦 WI 53701 229000 2层当代、过渡 2328 2 1/2 4. 2辆汽车,随附 22 非常好的家在一个街区的死胡同附近有树林。 非常特殊的安静和隐私的位置!家庭特色开放式平面图,带有 大房间-通往美丽庭院的新天井门。更新:木瓦、乙烯基墙板、, 冰箱和洗碗机,车库门。家庭房间的壁炉两侧是巨大的 内置的。增加一楼洗衣房和屡获殊荣的帕多瓦学校。 布罗克斯顿 ... 卡特勒 ... 阿盖尔 ... 斯特拉特莫尔 ... 帕多瓦 ... 奥索拉 ... 芬莫尔 ... 卡特勒 ... 帕多瓦 ... 卡特勒 ... 奥索拉 ...,xslt,key,muenchian-grouping,Xslt,Key,Muenchian Grouping,在我的教科书(Patrick Carey编写的XML第二版)中,它提供了一个使用“Muenchian分组”查找唯一选择的示例。我不明白的是: 到了这里,在这个例子的发展过程中,它指出: 属性[generate-id()=generate-id(key(“cityNames”,“Cutler”)[1])] “这表示由于索引为“[1]”,将在选择中找到第一个“Cutler”。给定上述XML,将返回“Cutler” 现在,该示例前进到如下: 属性[generate-id()=generate-id(k
谢谢定义密钥时,匹配表达式可以匹配多个节点。按名称访问密钥时返回该节点集
为第一个添加谓词筛选器可确保最多只能从键返回一个(第一个)节点。好的,我想我要寻找的答案是: 属性[generate-id()=generate-id(key(“cityNames”,city)[1])] 此代码查找每个城市的第一个 属性[generate-id()=generate-id(key(“cityNames”,city[1]))] 这个代码找到了所有城市的
很简单,只是以前看不到。为了更好地理解,我编辑了我的问题,请再看一遍,让我知道你的想法。谢谢。您的第二个XPath肯定没有多大意义,您不应该使用它。要查找第一个城市(或者更具体地说,第一个属性的城市),请使用
/listings/property[1]/city
。
<listings>
<property rln="r317080" firm="f102" agent="a2140">
<street>2638 Maple Avenue</street>
<city>Padua</city>
<state>WI</state>
<zip>53701</zip>
<price>229000</price>
<style>2 Story Contemporary, Transitional</style>
<sqfeet>2328</sqfeet>
<bathrooms>2 1/2</bathrooms>
<bedrooms>4</bedrooms>
<garage>2 car, attached</garage>
<age>22</age>
<description>Very nice home on a one block dead end street with woods nearby.
Very special location for quiet and privacy! Home features open floor plan with
large rooms - new patio doors to pretty yard. updates: shingles, vinyl siding,
refrig and dishwasher, garage door. Fireplace in family room flanked by great
built-ins. add first floor laundry and award winning Padua schools.
</description>
</property>
<property ...>
<city>Broxton</city>
...
</property>
<property ...>
<city>Cutler</city>
...
</property>
<property ...>
<city>Argyle</city>
...
</property>
<property ...>
<city>Stratmore</city>
...
</property>
<property ...>
<city>Padua</city>
...
</property>
<property ...>
<city>Oseola</city>
...
</property>
<property ...>
<city>Fenmore</city>
...
</property>
<property ...>
<city>Cutler</city>
...
</property>
<property ...>
<city>Padua</city>
...
</property>
<property ...>
<city>Cutler</city>
...
</property>
<property ...>
<city>Oseola</city>
...
</property>
</listings>