Convert one XML format to another and verify the convers ion … how to “verify the conversion”?
Roger L Costello <[email protected]> Sat, 29 Jun 2024 15:59:42 +0000
| Newsgroups | gmane.text.xml.devel |
|---|---|
| Message-ID | <SA9PR09MB5952C722F97DBD07C204D699C8D12@SA9PR09MB5952.namprd09.prod.outlook.com> |
--_000_SA9PR09MB5952C722F97DBD07C204D699C8D12SA9PR09MB5952namp_
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Hi Folks,
I am writing a program that converts an old XML format to a new XML format.=
In addition to doing the conversion, I also need to verify the conversion.=
I have two questions:
1. What does it mean to =93verify the conversion=94? Does XSD validat=
ion constitute verifying the conversion? My sense is no. My sense is that e=
ach action taken during the conversion must be verified. Do you agree with =
that?
2. As I do the conversion, I simultaneously output (to a separate fil=
e) metadata for each conversion action. What metadata should I generate to =
enable the conversion to be verified?
Allow me to explain =85
My program converts this old format:
<Airport_Name>Boston Logan Airport</Airport_Name>
to this new format:
<name>Boston Logan Airport</name>
Old format:
<Airport_Elevation>19</Airport_Elevation>
New format:
<elevation>19</elevation>
Old:
<Airport_Reference_Point_Latitude>N42214660</Airport_Reference_Point_Latitu=
de>
New:
<latitude>
<deg>42</deg>
<min>21</min>
<sec>46</sec>
<hSec>60</hSec>
<northSouth>North</northSouth>
</latitude>
Not only am I responsible for converting the old format to the new format, =
I am also required to verify the conversion.
Truthfully, I am unclear what it means to =93verify the conversion.=94 Ther=
e is an XML Schema for the new format. I could (and certainly will) validat=
e the file that is generated by my program. Is XSD-validation verifying the=
conversion? My sense is no. I think that =93verify the conversion=94 means=
verify each action taken during the conversion. Do you agree with that?
=93=85 verify each action taken during the conversion.=94 Here=92s my plan =
of attack: My program will output -- to another, different file -- metadata=
that describes the actions that were taken during the conversion.
Once again, I am unclear. What metadata is needed to verify an action? The =
metadata will be machine processed, so I am thinking that the metadata had =
better contain predicates (expressions that evaluate to true or false) sinc=
e they can be easily evaluated by a machine.
Here=92s the metadata that I am currently generating when I convert Airport=
_Name to name:
<mapping>
<description>Map Airport_Name to name</description>
<legacy-elmt-name>Airport_Name</legacy-elmt-name>
<legacy-elmt-value>GENERAL EDWARD LAWRENCE LOGAN </legacy-elmt-value>
<new-elmt-name>name</new-elmt-name>
<new-elmt-value>GENERAL EDWARD LAWRENCE LOGAN</new-elmt-value>
<predicate>Airport_Name =3D name</predicate>
</mapping>
The value of <predicate> is a predicate expression (does the value of Airpo=
rt_Name equal the value of name).
Here=92s the metadata that I generate when I convert Airport_Elevation to e=
levation:
<mapping>
<description>Map Airport_Elevation to elevation</description>
<legacy-elmt-name>Airport_Elevation</legacy-elmt-name>
<legacy-elmt-value>19</legacy-elmt-value>
<new-elmt-name>elevation</new-elmt-name>
<new-elmt-value>19</new-elmt-value>
<predicate>Airport_Elevation =3D elevation</predicate>
</mapping>
Here=92s the metadata that I generate when I convert Airport_Reference_Poin=
t_Latitude to latitude:
<mapping>
<description>Map Airport_Reference_Point_Latitude to latitude</descript=
ion>
<legacy-elmt-name>Airport_Reference_Point_Latitude</legacy-elmt-name>
<legacy-elmt-value>N42214660</legacy-elmt-value>
<new-elmt-name>latitude</new-elmt-name>
<new-elmt-value>
<latitude>
<deg>42</deg>
<min>21</min>
<sec>46</sec>
<hSec>60</hSec>
<northSouth>North</northSouth>
</latitude>
</new-elmt-value>
<predicate>
substring(Airport_Reference_Point_Latitude,2,2) =3D latitude/deg and
substring(Airport_Reference_Point_Latitude,4,2) =3D latitude/min and
substring(Airport_Reference_Point_Latitude,6,2) =3D latitude/sec and
substring(Airport_Reference_Point_Latitude,8,2) =3D latitude/hSec an=
d
(
(substring(Airport_Reference_Point_Latitude,1,1) =3D 'N' and latit=
ude/NorthSouth =3D 'North') or
(substring(Airport_Reference_Point_Latitude,1,1) =3D 'S' and latitu=
de/NorthSouth =3D 'South') or
(empty(latitude/NorthSouth))
)
</predicate>
</mapping>
Is that the metadata I should generate to enable the conversion to be verif=
ied?
/Roger
--_000_SA9PR09MB5952C722F97DBD07C204D699C8D12SA9PR09MB5952namp_
Content-Type: text/html; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DWindows-1=
252">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Aptos;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin-top:0in;
margin-right:0in;
margin-bottom:8.0pt;
margin-left:0in;
line-height:106%;
font-size:11.0pt;
font-family:"Aptos",sans-serif;
mso-ligatures:standardcontextual;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Aptos",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:11.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:866866181;
mso-list-type:hybrid;
mso-list-template-ids:99385846 67698703 67698713 67698715 67698703 6769871=
3 67698715 67698703 67698713 67698715;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#467886" vlink=3D"#96607D" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">Hi Folks,<o:p></o:p></=
span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">I =
am writing a program that converts an old XML format to a new XML format. I=
n addition to doing the conversion, I also need
to <b><i>verify the conversion</i></b>. I have two questions:<o:p></o:p></=
span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:0in;margin-right:0in;mar=
gin-bottom:0in;margin-left:.5in;mso-add-space:auto;text-indent:-.25in;line-=
height:normal;mso-list:l0 level1 lfo1">
<![if !supportLists]><span style=3D"font-family:"Calibri",sans-se=
rif;mso-ligatures:none"><span style=3D"mso-list:Ignore">1.<span style=3D"fo=
nt:7.0pt "Times New Roman"">
</span></span></span><![endif]><span style=3D"font-family:"Calibri&quo=
t;,sans-serif;mso-ligatures:none">What does it mean to =93verify the conver=
sion=94? Does XSD validation constitute verifying the conversion? My sense =
is no. My sense is that each
<b><i>action</i></b> taken during the conversion must be verified. Do you a=
gree with that?<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:0in;margin-right:0in;mar=
gin-bottom:0in;margin-left:.5in;mso-add-space:auto;text-indent:-.25in;line-=
height:normal;mso-list:l0 level1 lfo1">
<![if !supportLists]><span style=3D"font-family:"Calibri",sans-se=
rif;mso-ligatures:none"><span style=3D"mso-list:Ignore">2.<span style=3D"fo=
nt:7.0pt "Times New Roman"">
</span></span></span><![endif]><span style=3D"font-family:"Calibri&quo=
t;,sans-serif;mso-ligatures:none">As I do the conversion, I simultaneously =
output (to a separate file) metadata for each conversion action. What metad=
ata should I generate to enable the conversion
to be verified?<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Al=
low me to explain =85<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">My=
program converts this old format:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><Airport_Name></span><span styl=
e=3D"font-family:"Times New Roman",serif;color:black;background:w=
hite;mso-highlight:white">Boston Logan Airport</span><span style=3D"font-fa=
mily:"Times New Roman",serif;color:#000096;background:white;mso-h=
ighlight:white"></Airport_Name></span><span style=3D"font-family:&quo=
t;Times New Roman",serif;background:white;mso-highlight:white"><o:p></=
o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Arial",sans-serif;mso-ligatures:none"><o:p=
> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">to=
this new format:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><name></span><span style=3D"fon=
t-family:"Times New Roman",serif;color:black;background:white;mso=
-highlight:white">Boston Logan Airport</span><span style=3D"font-family:&qu=
ot;Times New Roman",serif;color:#000096;background:white;mso-highlight=
:white"></name></span><span style=3D"font-family:"Times New Roma=
n",serif;background:white;mso-highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Arial",sans-serif;mso-ligatures:none"><o:p=
> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Ol=
d format:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><Airport_Elevation></span><span=
style=3D"font-family:"Times New Roman",serif;color:black;backgro=
und:white;mso-highlight:white">19</span><span style=3D"font-family:"Ti=
mes New Roman",serif;color:#000096;background:white;mso-highlight:whit=
e"></Airport_Elevation></span><span style=3D"font-family:"Times =
New Roman",serif;background:white;mso-highlight:white"><o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Ne=
w format:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><elevation></span><span style=
=3D"font-family:"Times New Roman",serif;color:black;background:wh=
ite;mso-highlight:white">19</span><span style=3D"font-family:"Times Ne=
w Roman",serif;color:#000096;background:white;mso-highlight:white"><=
;/elevation></span><span style=3D"font-family:"Times New Roman"=
;,serif;background:white;mso-highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Ol=
d:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><Airport_Reference_Point_Latitude&=
gt;</span><span style=3D"font-family:"Times New Roman",serif;colo=
r:black;background:white;mso-highlight:white">N42214660</span><span style=
=3D"font-family:"Times New Roman",serif;color:#000096;background:=
white;mso-highlight:white"></Airport_Reference_Point_Latitude></span>=
<span style=3D"font-family:"Times New Roman",serif;background:whi=
te;mso-highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Ne=
w:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-size:12.0pt;font-family:"Arial",sans-serif;mso-lig=
atures:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><latitude></span><span style=3D=
"font-family:"Times New Roman",serif;color:black;background:white=
;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><deg>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white">42</span><span style=3D"font-fam=
ily:"Times New Roman",serif;color:#000096;background:white;mso-hi=
ghlight:white"></deg></span><span style=3D"font-family:"Times Ne=
w Roman",serif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><min>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white">21</span><span style=3D"font-fam=
ily:"Times New Roman",serif;color:#000096;background:white;mso-hi=
ghlight:white"></min></span><span style=3D"font-family:"Times Ne=
w Roman",serif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><sec>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white">46</span><span style=3D"font-fam=
ily:"Times New Roman",serif;color:#000096;background:white;mso-hi=
ghlight:white"></sec></span><span style=3D"font-family:"Times Ne=
w Roman",serif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><hSec>=
;</span><span style=3D"font-family:"Times New Roman",serif;color:=
black;background:white;mso-highlight:white">60</span><span style=3D"font-fa=
mily:"Times New Roman",serif;color:#000096;background:white;mso-h=
ighlight:white"></hSec></span><span style=3D"font-family:"Times =
New Roman",serif;color:black;background:white;mso-highlight:white"><br=
>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><northSo=
uth></span><span style=3D"font-family:"Times New Roman",serif;=
color:black;background:white;mso-highlight:white">North</span><span style=
=3D"font-family:"Times New Roman",serif;color:#000096;background:=
white;mso-highlight:white"></northSouth></span><span style=3D"font-fa=
mily:"Times New Roman",serif;color:black;background:white;mso-hig=
hlight:white"><br>
</span><span style=3D"font-family:"Times New Roman",serif;color:#=
000096;background:white;mso-highlight:white"></latitude></span><span =
style=3D"font-family:"Times New Roman",serif;background:white;mso=
-highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Arial",sans-serif;mso-ligatures:none"><o:p=
> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">No=
t only am I responsible for converting the old format to the new format, I =
am also required to
<b><i>verify the conversion</i></b>. <o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">Tr=
uthfully, I am unclear what it means to =93verify the conversion.=94 There =
is an XML Schema for the new format. I could (and certainly
will) validate the file that is generated by my program. Is XSD-validation=
verifying the conversion? My sense is no. I think that =93verify the conve=
rsion=94 means verify each
<b><i>action</i></b> taken during the conversion. Do you agree with that?<o=
:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">=
=93=85 verify each
<b><i>action</i></b> taken during the conversion.=94 Here=92s my plan of at=
tack: My program will output -- to another, different file -- metadata that=
describes the actions that were taken during the conversion.
<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">On=
ce again, I am unclear. What metadata is needed to verify an action? The me=
tadata will be machine processed, so I am thinking
that the metadata had better contain predicates (expressions that evaluate=
to true or false) since they can be easily evaluated by a machine.<o:p></o=
:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none">He=
re=92s the metadata that I am currently generating when I convert Airport_N=
ame to name:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Calibri",sans-serif;mso-ligatures:none"><o=
:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><mapping></span><span style=3D"=
font-family:"Times New Roman",serif;color:black;background:white;=
mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><descrip=
tion></span><span style=3D"font-family:"Times New Roman",serif=
;color:black;background:white;mso-highlight:white">Map Airport_Name to name=
</span><span style=3D"font-family:"Times New Roman",serif;color:#=
000096;background:white;mso-highlight:white"></description></span><sp=
an style=3D"font-family:"Times New Roman",serif;color:black;backg=
round:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-name></span><span style=3D"font-family:"Times New Roman",=
serif;color:black;background:white;mso-highlight:white">Airport_Name</span>=
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"></legacy-elmt-name></span><span=
style=3D"font-family:"Times New Roman",serif;color:black;backgro=
und:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-value></span><span style=3D"font-family:"Times New Roman"=
,serif;color:black;background:white;mso-highlight:white">GENERAL EDWARD LAW=
RENCE
LOGAN </span><span style=3D"font-family:"Times New Roman",serif;=
color:#000096;background:white;mso-highlight:white"></legacy-elmt-value&=
gt;</span><span style=3D"font-family:"Times New Roman",serif;colo=
r:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-name></span><span style=3D"font-family:"Times New Roman",ser=
if;color:black;background:white;mso-highlight:white">name</span><span style=
=3D"font-family:"Times New Roman",serif;color:#000096;background:=
white;mso-highlight:white"></new-elmt-name></span><span style=3D"font=
-family:"Times New Roman",serif;color:black;background:white;mso-=
highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-value></span><span style=3D"font-family:"Times New Roman",se=
rif;color:black;background:white;mso-highlight:white">GENERAL EDWARD LAWREN=
CE
LOGAN</span><span style=3D"font-family:"Times New Roman",serif;c=
olor:#000096;background:white;mso-highlight:white"></new-elmt-value><=
/span><span style=3D"font-family:"Times New Roman",serif;color:bl=
ack;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><predica=
te></span><span style=3D"font-family:"Times New Roman",serif;c=
olor:black;background:white;mso-highlight:white">Airport_Name =3D name</spa=
n><span style=3D"font-family:"Times New Roman",serif;color:#00009=
6;background:white;mso-highlight:white"></predicate></span><span styl=
e=3D"font-family:"Times New Roman",serif;color:black;background:w=
hite;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman",serif;color:#=
000096;background:white;mso-highlight:white"></mapping></span><span s=
tyle=3D"font-family:"Times New Roman",serif;background:white;mso-=
highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal"><span=
style=3D"font-family:"Arial",sans-serif;mso-ligatures:none"><o:p=
> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">The value of <predi=
cate> is a predicate expression (does the value of Airport_Name equal th=
e value of name).<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">Here=92s the metadata =
that I generate when I convert Airport_Elevation to elevation:<o:p></o:p></=
span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><mapping></span><span style=3D"=
font-family:"Times New Roman",serif;color:black;background:white;=
mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><descrip=
tion></span><span style=3D"font-family:"Times New Roman",serif=
;color:black;background:white;mso-highlight:white">Map Airport_Elevation to=
elevation</span><span style=3D"font-family:"Times New Roman",ser=
if;color:#000096;background:white;mso-highlight:white"></description>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-name></span><span style=3D"font-family:"Times New Roman",=
serif;color:black;background:white;mso-highlight:white">Airport_Elevation</=
span><span style=3D"font-family:"Times New Roman",serif;color:#00=
0096;background:white;mso-highlight:white"></legacy-elmt-name></span>=
<span style=3D"font-family:"Times New Roman",serif;color:black;ba=
ckground:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-value></span><span style=3D"font-family:"Times New Roman"=
,serif;color:black;background:white;mso-highlight:white">19</span><span sty=
le=3D"font-family:"Times New Roman",serif;color:#000096;backgroun=
d:white;mso-highlight:white"></legacy-elmt-value></span><span style=
=3D"font-family:"Times New Roman",serif;color:black;background:wh=
ite;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-name></span><span style=3D"font-family:"Times New Roman",ser=
if;color:black;background:white;mso-highlight:white">elevation</span><span =
style=3D"font-family:"Times New Roman",serif;color:#000096;backgr=
ound:white;mso-highlight:white"></new-elmt-name></span><span style=3D=
"font-family:"Times New Roman",serif;color:black;background:white=
;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-value></span><span style=3D"font-family:"Times New Roman",se=
rif;color:black;background:white;mso-highlight:white">19</span><span style=
=3D"font-family:"Times New Roman",serif;color:#000096;background:=
white;mso-highlight:white"></new-elmt-value></span><span style=3D"fon=
t-family:"Times New Roman",serif;color:black;background:white;mso=
-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><predica=
te></span><span style=3D"font-family:"Times New Roman",serif;c=
olor:black;background:white;mso-highlight:white">Airport_Elevation =3D elev=
ation</span><span style=3D"font-family:"Times New Roman",serif;co=
lor:#000096;background:white;mso-highlight:white"></predicate></span>=
<span style=3D"font-family:"Times New Roman",serif;color:black;ba=
ckground:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman",serif;color:#=
000096;background:white;mso-highlight:white"></mapping></span><span s=
tyle=3D"font-family:"Times New Roman",serif;background:white;mso-=
highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-size:=
12.0pt;line-height:105%;font-family:"Arial",sans-serif;mso-ligatu=
res:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">Here=92s the metadata =
that I generate when I convert Airport_Reference_Point_Latitude to latitude=
:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white"><mapping></span><span style=3D"=
font-family:"Times New Roman",serif;color:black;background:white;=
mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><descrip=
tion></span><span style=3D"font-family:"Times New Roman",serif=
;color:black;background:white;mso-highlight:white">Map Airport_Reference_Po=
int_Latitude
to latitude</span><span style=3D"font-family:"Times New Roman",s=
erif;color:#000096;background:white;mso-highlight:white"></description&g=
t;</span><span style=3D"font-family:"Times New Roman",serif;color=
:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-name></span><span style=3D"font-family:"Times New Roman",=
serif;color:black;background:white;mso-highlight:white">Airport_Reference_P=
oint_Latitude</span><span style=3D"font-family:"Times New Roman",=
serif;color:#000096;background:white;mso-highlight:white"></legacy-elmt-=
name></span><span style=3D"font-family:"Times New Roman",serif=
;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><legacy-=
elmt-value></span><span style=3D"font-family:"Times New Roman"=
,serif;color:black;background:white;mso-highlight:white">N42214660</span><s=
pan style=3D"font-family:"Times New Roman",serif;color:#000096;ba=
ckground:white;mso-highlight:white"></legacy-elmt-value></span><span =
style=3D"font-family:"Times New Roman",serif;color:black;backgrou=
nd:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-name></span><span style=3D"font-family:"Times New Roman",ser=
if;color:black;background:white;mso-highlight:white">latitude</span><span s=
tyle=3D"font-family:"Times New Roman",serif;color:#000096;backgro=
und:white;mso-highlight:white"></new-elmt-name></span><span style=3D"=
font-family:"Times New Roman",serif;color:black;background:white;=
mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><new-elm=
t-value></span><span style=3D"font-family:"Times New Roman",se=
rif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-famil=
y:"Times New Roman",serif;color:#000096;background:white;mso-high=
light:white"><latitude></span><span style=3D"font-family:"Times =
New Roman",serif;color:black;background:white;mso-highlight:white"><br=
>
</span><=
span style=3D"font-family:"Times New Roman",serif;color:#000096;b=
ackground:white;mso-highlight:white"><deg></span><span style=3D"font-=
family:"Times New Roman",serif;color:black;background:white;mso-h=
ighlight:white">42</span><span style=3D"font-family:"Times New Roman&q=
uot;,serif;color:#000096;background:white;mso-highlight:white"></deg>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white"><br>
</span><=
span style=3D"font-family:"Times New Roman",serif;color:#000096;b=
ackground:white;mso-highlight:white"><min></span><span style=3D"font-=
family:"Times New Roman",serif;color:black;background:white;mso-h=
ighlight:white">21</span><span style=3D"font-family:"Times New Roman&q=
uot;,serif;color:#000096;background:white;mso-highlight:white"></min>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white"><br>
</span><=
span style=3D"font-family:"Times New Roman",serif;color:#000096;b=
ackground:white;mso-highlight:white"><sec></span><span style=3D"font-=
family:"Times New Roman",serif;color:black;background:white;mso-h=
ighlight:white">46</span><span style=3D"font-family:"Times New Roman&q=
uot;,serif;color:#000096;background:white;mso-highlight:white"></sec>=
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white"><br>
</span><=
span style=3D"font-family:"Times New Roman",serif;color:#000096;b=
ackground:white;mso-highlight:white"><hSec></span><span style=3D"font=
-family:"Times New Roman",serif;color:black;background:white;mso-=
highlight:white">60</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"></hSec&g=
t;</span><span style=3D"font-family:"Times New Roman",serif;color=
:black;background:white;mso-highlight:white"><br>
</span><=
span style=3D"font-family:"Times New Roman",serif;color:#000096;b=
ackground:white;mso-highlight:white"><northSouth></span><span style=
=3D"font-family:"Times New Roman",serif;color:black;background:wh=
ite;mso-highlight:white">North</span><span style=3D"font-family:"Times=
New Roman",serif;color:#000096;background:white;mso-highlight:white">=
</northSouth></span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-famil=
y:"Times New Roman",serif;color:#000096;background:white;mso-high=
light:white"></latitude></span><span style=3D"font-family:"Times=
New Roman",serif;color:black;background:white;mso-highlight:white"><b=
r>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"></new-el=
mt-value></span><span style=3D"font-family:"Times New Roman",s=
erif;color:black;background:white;mso-highlight:white"><br>
</span><span style=3D"font-family:"Times New Roman&=
quot;,serif;color:#000096;background:white;mso-highlight:white"><predica=
te><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:0in;line-height:normal;backgr=
ound:white;text-autospace:none">
<span style=3D"font-family:"Times New Roman",serif;color:#000096;=
background:white;mso-highlight:white">
</span><span style=3D"font-family:"Times New Roman",serif;color:b=
lack;background:white;mso-highlight:white">substring(Airport_Reference_Poin=
t_Latitude,2,2) =3D latitude/deg and<br>
substring(Airport_Reference_Point_Lati=
tude,4,2) =3D latitude/min and<br>
substring(Airport_Reference_Point_Lati=
tude,6,2) =3D latitude/sec and<br>
substring(Airport_Reference_Point_Lati=
tude,8,2) =3D latitude/hSec and<br>
(<br>
(substring(Airport_Referen=
ce_Point_Latitude,1,1) =3D 'N' and latitude/NorthSouth =3D 'North') or<br>
(substring(Airport_Reference_Poi=
nt_Latitude,1,1) =3D 'S' and latitude/NorthSouth =3D 'South') or<br>
(empty(latitude/NorthSouth))<br>
)</span><span style=3D"font-family:"Tim=
es New Roman",serif;color:#000096;background:white;mso-highlight:white=
">
<br>
</predicate></span><span style=3D"font-family=
:"Times New Roman",serif;color:black;background:white;mso-highlig=
ht:white"><br>
</span><span style=3D"font-family:"Times New Roman",serif;color:#=
000096;background:white;mso-highlight:white"></mapping></span><span s=
tyle=3D"font-family:"Times New Roman",serif;background:white;mso-=
highlight:white"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-size:=
12.0pt;line-height:105%;font-family:"Arial",sans-serif;mso-ligatu=
res:none"><o:p> </o:p></span></p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">Is that the metadata I=
should generate to enable the conversion to be verified?<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal" style=3D"line-height:105%"><span style=3D"font-famil=
y:"Calibri",sans-serif;mso-ligatures:none">/Roger<o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>
--_000_SA9PR09MB5952C722F97DBD07C204D699C8D12SA9PR09MB5952namp_--