2009-06-19 6 views

risposta

3

ActionScript 3.0 di Flash e JavaScript (lingue ECMAScript) sono inoltre integrati con XML entro il E4X.
Così codice sembra qualcosa di simile (ospitarci questo è un esempio semplice e più fresco roba è possibile):

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")[email protected]); 
alert([email protected]); 
for each(var price in [email protected]) { 
    alert(price); 
} 

Ecco Adobe's docs per lavorare con XML in AS3.0.

+0

questa sembra essere la risposta più chiara. Grazie. – nixau

4

PowerShell ha alcune sottigliezze nell'affrontare XML, principalmente che un nodo ottiene proprietà dinamiche che rappresentano i suoi sub-nodi. Quindi, dato l'XML

<foo> 
    <bar/> 
    <bar/> 
</foo> 

un oggetto XML creato da questa ha una proprietà "foo" e l'oggetto restituito da che ha una proprietà "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 

Molto utile a volte.

+0

l'oggetto dice 'linguaggi di programmazione' – nixau

+4

XSLT è un linguaggio di programmazione: è completo di Turing (http://en.wikipedia.org/wiki/Turing_complete). – NickFitz

+0

sì, mio ​​male. In realtà sono "dichiarativo". Ho aggiornato la mia domanda – nixau

0

Dipende da cosa intendi profondamente integrato? .net viene fornito con uno spazio dei nomi XML e varie classi per trattare documenti XML ...

+0

Significa che cosa dice il soggetto. L'integrazione nativa non implica che sia necessario utilizzare un set di classi per eseguire operazioni semplici/banali sul documento xml. – nixau

10

VB.NET 9.0 ha XML literals che sembra quello che stai cercando. Questo esempio tratto dalla 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 
+3

Mi è piaciuto molto quando hanno introdotto questo in VB.NET 9 ... finalmente qualcosa da mostrare agli sviluppatori di C# e farli dire, "in realtà, sarebbe bello avere in C# ..." – AakashM

2

Groovy e Scala hanno il supporto XML letterale, anche se credo che questo è generalmente un'idea davvero stupida.

2

javascript, vedere here

0

mi piacerebbe andare con groove in quanto si integra meglio con Java.

0

XQuery? Dalla articolo collegato:

XQuery fornisce i mezzi per estrarre e manipolare i dati da documenti XML o qualsiasi fonte di dati che possono essere visualizzati come XML, come ad esempio database relazionali o documenti di Office.

Sostiene per-loop, talora, lasciate, ordinando ecc

+0

sì, ma è un linguaggio piuttosto dichiarativo di quello algoritmico – nixau

+0

:) Non mi piacciono, sono interessanti, ma la domanda riguardava i linguaggi algoritmici come Java ... – nixau

1

Flex e scritto di azione.