GOAL out { resource [ "stdout:", "html" ], dl [ all div [ dt [ &join(var Year,"-",var Month, "-",var Day, ", ",var StartTimeH, ":", var StartTimeM, "-", var EndTime) ], dd [ &join(var Speaker, " - "), em[ var Title ], &join("(", var Room, ")") ] ] order by lexical [ Year, Month, Day, StartTimeH ] ascending ] } FROM ns-prefix atom = "http://www.w3.org/2005/Atom" ns-prefix gd = "http://schemas.google.com/g/2005" in { resource [ "file:feed.xml", "xml" ], atom:feed {{ atom:entry {{ atom:title {{ var Title }}, gd:when {{ attributes {{ atom:startTime{ /^(var Year ->[0-9]{4})-(var Month ->[0-9]{2})-(var Day ->[0-9]{2})T(var StartTimeH ->[0-9]{2}):(var StartTimeM ->[0-9]{2}):[0-9]{2}/}, atom:endTime{ /^.*T(var EndTime ->[0-9]{2}:[0-9]{2}):[0-9]{2}/ } }} }}, gd:"where" {{ attributes {{ atom:valueString{ /^(var Place ->[^,]*), (var Room ->[^,]*)/ } }} }}, atom:content {{ /^.*Speaker:( ?)(var Speaker ->.+)Type:( ?)(var Type ->.+)Abstract:( ?)(var Abstract ->.+)/ }} }} }} } END