<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v =
"urn:schemas-microsoft-com:vml" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:st1 =
"urn:schemas-microsoft-com:office:smarttags"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-2022-jp">
<META content="MSHTML 6.00.5730.11" name=GENERATOR><!--[if !mso]>
<STYLE>v\:* {
        BEHAVIOR: url(#default#VML)
}
o\:* {
        BEHAVIOR: url(#default#VML)
}
w\:* {
        BEHAVIOR: url(#default#VML)
}
.shape {
        BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]--><o:SmartTagType name="PersonName"
namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType><!--[if !mso]>
<STYLE>st1\:* {
        BEHAVIOR: url(#default#ieooui)
}
</STYLE>
<![endif]-->
<STYLE>@font-face {
        font-family: SimSun;
}
@font-face {
        font-family: MS Gothic;
}
@font-face {
        font-family: Tahoma;
}
@font-face {
        font-family: MS PGothic;
}
@font-face {
        font-family: @MS Gothic;
}
@font-face {
        font-family: @MS PGothic;
}
@font-face {
        font-family: @SimSun;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY: "Times New Roman"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
        COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
        COLOR: blue; TEXT-DECORATION: underline
}
P {
        FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
CODE {
        FONT-FAMILY: "Courier New"
}
PRE {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY: "Courier New"
}
SPAN.EmailStyle20 {
        COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
SPAN.EmailStyle21 {
        COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
SPAN.EmailStyle22 {
        COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
SPAN.EmailStyle23 {
        COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
SPAN.EmailStyle24 {
        COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply
}
DIV.Section1 {
        page: Section1
}
OL {
        MARGIN-BOTTOM: 0in
}
UL {
        MARGIN-BOTTOM: 0in
}
</STYLE>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=EN-US vLink=blue link=blue bgColor=white>
<DIV dir=ltr align=left><SPAN class=339425623-07122006><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=339425623-07122006><FONT face=Arial
color=#0000ff size=2>Should there be a way of setting a starting folder for
the enumeration?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=339425623-07122006><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=339425623-07122006><FONT face=Arial
color=#0000ff size=2>Jason</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=339425623-07122006><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Tony Fang [mailto:tony.fang@autodesk.com]
<BR><B>Sent:</B> Thursday, December 07, 2006 15:47<BR><B>To:</B>
dev@mapguide.osgeo.org<BR><B>Subject:</B> RE: [mapguide-dev] Unmanaged Data APIs
RFC<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=Section1>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Thanks
Steve.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">After some discussion
with Steve, we came up with the following changes to the API. Note the changes
to the depth parameter and the addition of the GetUnmanagedDataMapping
method.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Thanks,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Tony
Fang<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">virtual MgStringCollection *
MgResourceService::EnumerateUnmanagedData(<B><SPAN
style="FONT-WEIGHT: bold">CREFSTRING <I><SPAN
style="FONT-STYLE: italic">mappingName</SPAN></I></SPAN></B>, CREFSTRING
<I><SPAN style="FONT-STYLE: italic">dataTypeFilter</SPAN></I>, INT32 <I><SPAN
style="FONT-STYLE: italic">depth</SPAN></I>); <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Enumerates the available unmanaged
data from the server. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">mappingName</SPAN></FONT></I></B><B><FONT
color=black><SPAN style="FONT-WEIGHT: bold; COLOR: windowtext"> specifies which
mappingName to use to return the unmanaged data. When set to empty string it
will use all mappings.<o:p></o:p></SPAN></FONT></B></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">dataTypeFilter</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is a filter on the returned data.
E.g. SHP, SDF, DWF, RASTER, FOLDER. Empty string will return all data types.
FOLDER returns a list of subfolders. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">depth</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is how many levels of subfolders it
should search for data. <B><SPAN style="FONT-WEIGHT: bold">-1 to search all
depths, 0 to search only the top level, 1 to search 1 level, 2 to search 2
levels, etc. </SPAN></B><o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns an MgStringCollection
containing the available unmanaged data files. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">virtual MgStringCollection *
MgResourceService::EnumerateUnmanagedDataMappings();
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Enumerates the unmanaged data
mappings. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">None. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns an MgStringCollection
containing <B><SPAN style="FONT-WEIGHT: bold">only</SPAN></B> the mapping
<B><SPAN style="FONT-WEIGHT: bold">names</SPAN></B>.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">virtual void
MgResourceService::SetUnmanagedDataMapping(CREFSTRING <B><I><SPAN
style="FONT-WEIGHT: bold; FONT-STYLE: italic">mappingName</SPAN></I></B>,
CREFSTRING <B><I><SPAN
style="FONT-WEIGHT: bold; FONT-STYLE: italic">mappingValue</SPAN></I></B>);
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Sets the unmanaged data mapping. If
the mapping does not exist, it adds it. If it does exist, it will set it to the
new path. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">mappingName</SPAN></FONT></I></B><FONT
color=black><SPAN style="COLOR: windowtext"> is the mapping name.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">mappingValue</SPAN></FONT></I></B><FONT
color=black><SPAN style="COLOR: windowtext"> is the mapping path.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns nothing.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">(new
addition)<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">virtual STRING
MgResourceService::GetUnmanagedDataMapping(CREFSTRING <B><I><SPAN
style="FONT-WEIGHT: bold; FONT-STYLE: italic">mappingName</SPAN></I></B>);
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns the unmanaged data mapping
value. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">mappingName</SPAN></FONT></I></B><FONT
color=black><SPAN style="COLOR: windowtext"> is the mapping name.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns the unmanaged data mapping
value.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="MS PGothic" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-FAMILY: 'MS PGothic'">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma color=black size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma color=black size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma"> <st1:PersonName
w:st="on">Steve Dang</st1:PersonName> <BR><B><SPAN
style="FONT-WEIGHT: bold">Sent:</SPAN></B> Thursday, December 07, 2006 3:20
PM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> <st1:PersonName
w:st="on">dev@mapguide.osgeo.org</st1:PersonName><BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE: [mapguide-dev] Unmanaged Data
APIs RFC</SPAN></FONT><FONT face="MS PGothic" color=black><SPAN
style="COLOR: windowtext; FONT-FAMILY: 'MS PGothic'"><o:p></o:p></SPAN></FONT></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">For cross platform
compatibilities (i.e. Linux only supports ‘/’s while Windows supports both ‘/’s
and ‘\’s), pathnames referenced in the XML document and the serverconfig.ini
file should always contain forward slashes (‘/’s) instead of backward slashes
(‘\’s).<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Thanks,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Steve.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="MS PGothic" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-FAMILY: 'MS PGothic'">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma color=black size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma color=black size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma"> Tony Fang
<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Wednesday, December 06,
2006 4:10 PM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B>
<st1:PersonName w:st="on">dev@mapguide.osgeo.org</st1:PersonName><BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE: [mapguide-dev] Unmanaged Data
APIs RFC</SPAN></FONT><FONT face="MS PGothic" color=black><SPAN
style="COLOR: windowtext; FONT-FAMILY: 'MS PGothic'"><o:p></o:p></SPAN></FONT></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">I’ve updated the
Unmanaged Data APIs RFC.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">http://wiki.osgeo.org/index.php/MapGuide_RFC_2_-_Unmanaged_Data_APIs<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">The main change is the
addition of the 3 Resource Service API functions. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Please have a look and
post any feedback to the group.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Thanks,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Tony
Fang<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">The folllowing API functions will be
added to the Resource Service: <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext"><BR>virtual MgStringCollection *
MgResourceService::EnumerateUnmanagedData(CREFSTRING <I><SPAN
style="FONT-STYLE: italic">dataTypeFilter</SPAN></I>, INT32 <I><SPAN
style="FONT-STYLE: italic">depth</SPAN></I>); <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Enumerates the available unmanaged
data from the server. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">dataTypeFilter</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is a filter on the returned data.
E.g. SHP, SDF, DWF, RASTER, FOLDER. Empty string will return all data types.
FOLDER returns a list of subfolders. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">depth</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is how many levels of subfolders it
should search for data. 0 to search all subfolders, 1 to search only the
top-level, 2 to search down one subfolder, etc. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns an MgStringCollection
containing the available unmanaged data files. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext"><BR>virtual MgStringCollection *
MgResourceService::EnumerateUnmanagedDataMappings();
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Enumerates the unmanaged data
mappings. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">None. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns an MgStringCollection
containing the mappings. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext"><BR>virtual void
MgResourceService::SetUnmanagedDataMapping(CREFSTRING <I><SPAN
style="FONT-STYLE: italic">mapping</SPAN></I>, CREFSTRING <I><SPAN
style="FONT-STYLE: italic">path</SPAN></I>); <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Sets the unmanaged data mapping. If
the mapping does not exist, it adds it. If it does exist, it will set it to the
new path. <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Parameters:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">mapping</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is the mapping name.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><I><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-STYLE: italic">path</SPAN></FONT></I><FONT
color=black><SPAN style="COLOR: windowtext"> is the mapped path.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: windowtext">Returns:</SPAN></FONT></B><FONT
color=black><SPAN style="COLOR: windowtext"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">Returns nothing.
<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="MS PGothic" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-FAMILY: 'MS PGothic'">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma color=black size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma color=black size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma"> <st1:PersonName
w:st="on">Bill Dhimitri</st1:PersonName> <BR><B><SPAN
style="FONT-WEIGHT: bold">Sent:</SPAN></B> Friday, November 10, 2006 7:38
AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> <st1:PersonName
w:st="on">dev@mapguide.osgeo.org</st1:PersonName><BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE: [mapguide-dev] Unmanaged Data
APIs RFC</SPAN></FONT><FONT face="MS PGothic" color=black><SPAN
style="COLOR: windowtext; FONT-FAMILY: 'MS PGothic'"><o:p></o:p></SPAN></FONT></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Hi
Tony,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">I think this looks good
so far. One thing that might be worth clarifying is the </SPAN></FONT>API
to enumerate the unmanaged data files<FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal
style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><![if !supportLists]><FONT
face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><SPAN
style="mso-list: Ignore">1)<FONT face="Times New Roman" size=1><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></FONT></SPAN></SPAN></FONT><![endif]><FONT face=Arial color=navy
size=2><SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Should the
API provide a way to filter what is returned by file type? For example,
maybe the caller wants just a list of SHP files. Or just a list of ECW
files. Etc. I am assuming that the API would allow filtering based on a specific
mapping (your example shows a list from “all”
mappings).<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><![if !supportLists]><FONT
face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><SPAN
style="mso-list: Ignore">2)<FONT face="Times New Roman" size=1><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></FONT></SPAN></SPAN></FONT><![endif]><FONT face=Arial color=navy
size=2><SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Should the
API provide control over the depth of the search into the directory
sub-structure? For example, the caller might want only those files in the
top-most folders. The concern here is that if I have a very large
directory substructure with thousands of files, there could be a performance
hit…<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal
style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><![if !supportLists]><FONT
face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><SPAN
style="mso-list: Ignore">3)<FONT face="Times New Roman" size=1><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></FONT></SPAN></SPAN></FONT><![endif]><FONT face=Arial color=navy
size=2><SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Should the
API provide a way to get a list of sub-folders? Here, I am thinking about
FDO which allows a folder (as opposed to a file) to be treated as a data source.
FDO does this for raster and SHP/DBF/PRJ files. Notice that today,
MapGuide Studio does not directly support the notion of a data source that
consists of a folder containing SHP/DBF/PRJ files, but FDO and the MapGuide
server handle this scenario just fine. Another common scenario that would
be helped by this is a folder that contains say 500 geo-contiguous raster
files. It’s much more convenient to treat the folder as a single data
source, rather than deal with each individual file.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Bill<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="MS PGothic" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext; FONT-FAMILY: 'MS PGothic'">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma color=black size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma color=black size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma"> Tony Fang
<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Friday, November 03,
2006 7:41 PM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B>
<st1:PersonName w:st="on">dev@mapguide.osgeo.org</st1:PersonName><BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE: [mapguide-dev] Unmanaged Data
APIs RFC</SPAN></FONT><FONT face="MS PGothic" color=black><SPAN
style="COLOR: windowtext; FONT-FAMILY: 'MS PGothic'"><o:p></o:p></SPAN></FONT></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">I’ve updated the RFC
with the drive mappings suggestion. Any feedback on the returned list of drive
mappings (using square brackets on the drive mapping name) would be
appreciated.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">The
server's unmanaged data directories will be specified using the
serverconfig.ini. A new section defining directory mappings will be used to
specify the unmanaged data directories. <o:p></o:p></SPAN></FONT></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">For
windows, it may look like this: <o:p></o:p></SPAN></FONT></P>
<P><CODE><FONT face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt">[Unmanaged Data Mappings]</SPAN></FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">SomeSdfFiles = c:\mydata\sdf</FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">Some Shp Files = d:\otherdata\shp</FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">BigArseImages =
\\some_other_machine\data\images</FONT></CODE><FONT face="Courier New"
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">Some </FONT></CODE><CODE><FONT face=SimSun size=2><SPAN
lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt"> DwfFiles =
c:\mydata\</SPAN></FONT></CODE><CODE><FONT face=SimSun size=2><SPAN lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt">Dwf</SPAN></FONT></CODE><FONT face="Courier New"
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face=SimSun size=2><SPAN lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">大き</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt">sdf = c:\mydata\bigsdf
</SPAN></FONT></CODE><o:p></o:p></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">For linux,
it may look like this: <o:p></o:p></SPAN></FONT></P>
<P><CODE><FONT face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt">[Unmanaged Data Mappings]</SPAN></FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">SomeSdfFiles = /usr/mydata/sdf</FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">Some Shp Files = /usr/otherdata/shp</FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">BigArseImages =
/mnt/some_other_machine/data/images</FONT></CODE><FONT face="Courier New"
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">Some </FONT></CODE><CODE><FONT face=SimSun size=2><SPAN
lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt"> DwfFiles =
/usr/mydata/</SPAN></FONT></CODE><CODE><FONT face=SimSun size=2><SPAN lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt">Dwf</SPAN></FONT></CODE><FONT face="Courier New"
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face=SimSun size=2><SPAN lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">大き</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt">sdf = /usr/mydata/bigsdf
</SPAN></FONT></CODE><o:p></o:p></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">Unicode
characters are supported in the mapping names. Spaces in the mappings are also
supported. Square brackets [ and ] are not allowed. They are reserved characters
for the serverconfig.ini section titles. <o:p></o:p></SPAN></FONT></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">We will add
API methods to return the unmanaged data mappings, set the mappings, and also
verify that the mappings are valid and accessible. <o:p></o:p></SPAN></FONT></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">We will add
an API to enumerate the unmanaged data files available on the server machine.
The files will be prefaced with their mapping names. You may enumerate all files
from all the available drive mappings, or you may select a single drive mapping.
<o:p></o:p></SPAN></FONT></P>
<P><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">A returned
list from all available drive mappings may look like this:
<o:p></o:p></SPAN></FONT></P>
<P><CODE><FONT face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt">[SomeSdfFiles]world.sdf</SPAN></FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">[Some Shp Files]ecuador.shp</FONT></CODE><FONT
face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">[Some </FONT></CODE><CODE><FONT face=SimSun size=2><SPAN
lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt">
DwfFiles]large.dwf</SPAN></FONT></CODE><FONT face="Courier New" size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">[Some </FONT></CODE><CODE><FONT face=SimSun size=2><SPAN
lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">很大中文</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt">
DwfFiles]subdir/Big.dwf</SPAN></FONT></CODE><FONT face="Courier New"
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><BR></SPAN></FONT><CODE><FONT
face="Courier New">[</FONT></CODE><CODE><FONT face=SimSun size=2><SPAN
lang=ZH-CN
style="FONT-SIZE: 10pt; FONT-FAMILY: SimSun">大き</SPAN></FONT></CODE><CODE><FONT
face="Courier New" size=2><SPAN style="FONT-SIZE: 10pt">sdf]reallybig.sdf
</SPAN></FONT></CODE><o:p></o:p></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Thanks,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Tony<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt; COLOR: windowtext">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma color=black size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma color=black size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: windowtext; FONT-FAMILY: Tahoma"> <st1:PersonName
w:st="on">Robert Bray</st1:PersonName> [mailto:rbray@robertbray.net]
<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Friday, November 03,
2006 9:05 AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B>
<st1:PersonName w:st="on">dev@mapguide.osgeo.org</st1:PersonName><BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> Re: [mapguide-dev] Unmanaged Data
APIs RFC</SPAN></FONT><FONT color=black><SPAN
style="COLOR: windowtext"><o:p></o:p></SPAN></FONT></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt">Jason,<BR><BR>Good questions. In addition I think it
would make sense / be highly desirable for all RFCs that add or modify APIs to
include more detail with respect to those changes. It would be nice to see the
actual API function signatures for example.<BR><BR>Bob<BR><BR><BR>Jason Birch
wrote: <o:p></o:p></SPAN></FONT></P><PRE wrap=""><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">That would be cool. That way we can have a theme, and a nested hierarchy within that theme if we need the complexity. Are we restricted to single-word mappings, or will spaces be supported? ASCII characters only or full internationalisation?<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">What about schema changes? Will there be a way of updating the repository's knowledge of unmanaged data schemae? Or are these maybe cached on a session basis like the RDBMS schemae?<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">There would also need to be a method that allows the author UIs to validate resources that reference unmanaged data sources, to make sure that any dependancies (properties, maptips, themes, etc) are still valid, and give a graphical indication when the world slips.<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">Jason<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">________________________________<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">From: <st1:PersonName w:st="on">Robert Bray</st1:PersonName> [<A href="mailto:rbray@robertbray.net">mailto:rbray@robertbray.net</A>]<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">Sent: Thu 2006-11-02 10:46 PM<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">To: <A href="mailto:dev@mapguide.osgeo.org">dev@mapguide.osgeo.org</A><o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">Subject: Re: [mapguide-dev] Unmanaged Data APIs RFC<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">I too am concerned this will make data management hard for people with lots of data / multiple projects. It might be better to dedicate a section in serverconfig.ini to define path mappings as follows:<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">[Path Mappings]<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">SomeSdfFiles = <some path><o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">SomeShpFiles = <some other path><o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">BigArseImages = <path to SAN disk><o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">...<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">In Studio / Web Studio the user would be presented the list of path mappings. Once they select a path mapping they can browse all files and folders below that path.<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">My 2 cents...<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">Bob<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">--------------------------------------------------------------------- To unsubscribe, e-mail: <A href="mailto:dev-unsubscribe@mapguide.osgeo.org">dev-unsubscribe@mapguide.osgeo.org</A> For additional commands, e-mail: <A href="mailto:dev-help@mapguide.osgeo.org">dev-help@mapguide.osgeo.org</A> <o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></FONT></PRE><PRE wrap=""><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">
<HR align=center width="90%" SIZE=4>
</SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE style="TEXT-ALIGN: center"><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">---------------------------------------------------------------------<o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">To unsubscribe, e-mail: <A href="mailto:dev-unsubscribe@mapguide.osgeo.org">dev-unsubscribe@mapguide.osgeo.org</A><o:p></o:p></SPAN></FONT></PRE><PRE><FONT face="Courier New" color=black size=2><SPAN style="FONT-SIZE: 10pt">For additional commands, e-mail: <A href="mailto:dev-help@mapguide.osgeo.org">dev-help@mapguide.osgeo.org</A><o:p></o:p></SPAN></FONT></PRE>
<P class=MsoNormal><FONT face="Times New Roman" color=black size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P></DIV>---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@mapguide.osgeo.org For additional
commands, e-mail: dev-help@mapguide.osgeo.org</BODY></HTML>