Reputation: 6403
I'm trying to read XML using AppleScript.
<?xml version="1.0" encoding="UTF-8"?>
<xfdf xml:space="preserve" xmlns="http://ns.adobe.com/xfdf/">
<annots>
<square color="#FF0000" creationdate="D:20130828114843+05'30'" date="D:20130828114901+05'30'" flags="print" name="Xi6cOkAWgWHcAhpfBkR5A7" page="0" rect="347.7599999991828,1041.8400000004283,453.5999999989341,1056.9600000003927" subject="Rectangle" title="1 im, awltest7 (AWLTEST7.IM)">
<contents-richtext>
<body>
<p>Text Not Clear</p>
</body>
</contents-richtext>
<popup open="yes" page="0" rect="453.5999999989341,944.4600000003926,573.5999999989341,1056.9600000003927"/>
</square>
<square color="#FF0000" creationdate="D:20130828114910+05'30'" date="D:20130828114919+05'30'" flags="print" name="ptmmBKtfoDEbVzirMgZLnY" page="0" rect="511.1999999987987,1092.960000000308,550.7999999987057,1123.9200000002352" subject="Rectangle" title="2 im, awltest7 (AWLTEST7.IM)">
<contents-richtext>
<body>
<p>Incorrect dimension</p>
</body>
</contents-richtext>
<popup open="yes" page="0" rect="550.7999999987057,1011.4200000002352,670.7999999987056,1123.9200000002352"/>
</square>
<square color="#FF0000" creationdate="D:20130828114956+05'30'" date="D:20130828115004+05'30'" flags="print" name="8LaAl2Upx4LEaQptQKXoZx" page="0" rect="355.67999999916424,731.5200000011573,431.99999999898483,750.2400000011135" subject="Rectangle" title="3 im, awltest7 (AWLTEST7.IM)">
<contents-richtext>
<body>
<p>Incorrect Text</p>
</body>
</contents-richtext>
<popup open="yes" page="0" rect="431.99999999898483,637.7400000011133,551.9999999989849,750.2400000011135"/>
</square>
</annots>
</xfdf>
AppleScript
set theXMLFile to ((choose file) as string)
tell application "System Events"
set theXMLFile to XML file theXMLFile
set squares to XML elements of XML element "annots" of XML element "xfdf" of theXMLFile whose name is "square"
set p to {}
set attrs to {}
repeat with i from 1 to (count squares)
set end of p to value of XML element "p" of XML element "body" of XML element "contents-richtext" of item i of squares
set end of attrs to value of XML attributes of XML element "popup" of item i of squares
end repeat
end tell
By using the the script I managed to get the '< p >' and '< popup >' value. How do I get the '< square >' value. Please advice.
Upvotes: 1
Views: 1397
Reputation: 6403
below scripts work.
tell application "System Events"
set theXMLFile to XML file theXMLFile
set squares to XML elements of XML element "annots" of XML element "xfdf" of theXMLFile whose name is "square"
set p to {}
set attrs to {}
repeat with i from 1 to (count squares)
set end of p to value of XML element "p" of XML element "body" of XML element "contents-richtext" of item i of squares
set end of attrs to value of XML attributes of item i of squares
end repeat
end tell
Upvotes: 1