package main import ( "fmt" "log" "github.com/kr/pretty" ) var xmldoc = ` banaan ansjovis apenootjes ` func main() { doc, err := parse(xmldoc) if err != nil { log.Fatalln(err) } fmt.Println("\nGeparst XML-document:") pretty.Println(doc) fmt.Print(` Query: /animals/chimp[2]/food/text() `) /* SORT COLLECT 'child' 'type' 'text' text COLLECT 'child' 'name' 'node' food COLLECT 'child' 'name' 'node' chimp COLLECT 'child' 'name' 'node' animals ROOT PREDICATE ELEM Object is a number : 2 */ result := doc.run( &xPath{ arg1: &dSort{ arg1: &dCollect{ ARG: collect__child__type__text__text, arg1: &dCollect{ ARG: collect__child__food, arg1: &dCollect{ ARG: collect__child__chimp, arg1: &dCollect{ ARG: collect__child__animals, arg1: &dRoot{}, }, arg2: &dPredicate{ arg1: &dFunction{ ARG: function__nth2__0__args, }, }, }, }, }, }, }) fmt.Println("\nZoekresultaat:") pretty.Println(result) fmt.Println() }