使用F#从XDocument中提取所有命名空间属性



我想从XDocument.Root中提取属性IsNamespaceDeclaration等于true的所有XAttribute元素,并将它们放在列表中进行进一步处理。

我想在不使用xPath和F#的情况下完成它。

背景:我有一个限制(业务规则(,即某些名称空间必须在XML的根元素中声明,而不是在它们各自的元素中,而其他一些名称空间则不能在根元素中宣布。因此,我必须检查他们的父母。

我试过一些选择,但没有成功。请帮忙。

let namespaceAttributes =
r.DescendantsAndSelf().Attributes()
|> Seq.where (fun i -> 
i.IsNamespaceDeclaration 
&& 
i.Name.LocalName <> "xsi")

其中r是XElement

最新更新