[REBOL] Re: xml?
From: joel:neely:fedex at: 14-Nov-2000 10:02
Hi, Graham,
Here's my quick-and-dirty...
[rebol-bounce--rebol--com] wrote:
> Maybe one day I'll get my data as XML rather than HL7, and
> in preparation I've been wondering how I would go about
> extracting data.
>
...
> ; dataline: "<HB>105</HB><WBC>7.1</WBC><PLATELETS>400</PLATELETs><ESR>100</ESR>"
>
Bear in mind that the above is not valid XML. There must be one top-level
tag that encloses all other content. With that bit of nit-picky-ness firmly
in place... ;-) , the demo script below, %xml2obj.r
REBOL []
phlarp: parse-xml {
<data>
<HB>105</HB><WBC>7.1</WBC><PLATELETS>400</PLATELETs><ESR>100</ESR>
</data>
}
objblock: copy []
foreach item phlarp/3/1/3 [
if block? item [
append objblock reduce [to-set-word item/1 item/3/1]
]
]
objobj: make object! objblock
probe objobj
get in objobj 'HB
produces as output
>> do %xml2obj.r
make object! [
HB: "105"
WBC: "7.1"
PLATELETS: "400"
ESR: "100"
]
== "105"
Obviously a real application of this idea would traverse an entire
multi-record
XML tree with something more intelligent than
phlarp/3/1/3
but that is "left as an exercise for the reader". Hope this helps!
-jn-
--
; Joel Neely [joel--neely--fedex--com] 901-263-4460 38017/HKA/9677
REBOL [] foreach [order string] sort/skip reduce [ true "!"
false head reverse "rekcah" none "REBOL " prin "Just " "another "
] 2 [prin string] print ""