如果有的话,xml有多深入语言?什么原语用于操作xml文档?
PS。我对SQL,XPath,XSLT等声明性语言不感兴趣:)
答案 0 :(得分:10)
VB.NET 9.0有XML literals,这看起来像你正在寻找的。 此示例取自Imran Shaik blog
<WebMethod()> _
Public Function AllCountriesUsingXMLLiterals() As String
Dim sud As New CountryDataSetTableAdapters.CountryTableTableAdapter
Dim XDataSet As New CountryDataSet.CountryTableDataTable
sud.Fill(XDataSet)
Dim XDoc = _
<Countries xmlns="http://tempuri.org/Schema/Countries">
<%= From country In XDataSet Select <Country Code=<%= country.CountryISO %> Name=<%= country.CountryName %>/> %>
</Countries>
Return XDoc.ToString
End Function
答案 1 :(得分:4)
Powershell在处理XML方面有一些细节,主要是节点获得代表其子节点的动态属性。所以给出了XML
<foo>
<bar/>
<bar/>
</foo>
从此创建的XML对象具有“foo”属性,并且返回的对象具有“bar”属性。
> $x=[xml]"<foo><bar moo='meh'/><bar meow='bleh'/></foo>" > $x.foo bar --- {bar, bar} > $x.foo.bar[0] moo --- meh > $x.foo.bar[1] meow ---- bleh
有时非常方便。
答案 2 :(得分:3)
Flash的ActionScript 3.0和JavaScript(ECMAScript语言)也通过E4X与XML集成。
所以代码看起来像这样(尽管这是一个简单的例子,可以使用更酷的东西):
var sales = <sales vendor="John">
<item type="peas" price="4" quantity="6"/>
<item type="carrot" price="3" quantity="10"/>
<item type="chips" price="5" quantity="3"/>
</sales>;
alert( sales.item.(@type == "carrot").@quantity );
alert( sales.@vendor );
for each( var price in sales..@price ) {
alert( price );
}
以下是Adobe's docs,用于在AS3.0中使用XML。
答案 3 :(得分:2)
Groovy和Scala有XML文字支持,但我认为这通常是一个非常愚蠢的想法。
答案 4 :(得分:2)
javascript,请参阅here
答案 5 :(得分:1)
Flex和动作脚本。
答案 6 :(得分:0)
取决于深度整合的意思? .net附带了一个XML命名空间和各种用于处理XML文档的类......
答案 7 :(得分:0)
我会选择groovy,因为它最好地与Java集成。
答案 8 :(得分:0)
XQuery?来自链接的文章:
XQuery提供了提取方法 并操纵XML文档中的数据 或任何可以查看的数据源 作为XML,例如关系数据库 或办公室文件。
它支持for循环,whiles,let,ordered等。