<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Re: [mapguide-dev] Metadata</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY dir=ltr>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>It sounds like you've given this considerable thought, 
which is reassuring :)</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>In my ideal world, metadata would be modelled&nbsp;using 
the superset of entities and attributes required by the ISO and FGDC standards, 
with the potential to be expanded to cover other elements that are required but 
not present in these standards.&nbsp; From this model, you would not rely on the 
standards other than to define&nbsp;the required elements for each schema.&nbsp; 
You could also allow organisations to define their own profiles; subsets of 
required elements that cover their internal business needs.&nbsp; These would 
all be entered through a common interface, and could then be&nbsp;output via 
something akin to an XSLT transformation or database views&nbsp;that formats 
them into the desired standard XML output, which could in turn be transformed 
into&nbsp;HTML for display.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>The data could also be accessed by 
various&nbsp;transport-level services, such as </FONT></SPAN><SPAN 
class=478455617-19092006><FONT face=Arial color=#0000ff size=2>CSW (<A 
href="http://www.opengeospatial.org/standards/cat">http://www.opengeospatial.org/standards/cat</A>) 
or&nbsp;Z39.50 and its successor SRU/SRW (<A 
href="http://www.loc.gov/standards/">http://www.loc.gov/standards/</A>), as well 
as front end applications such as a&nbsp;spatial discovery portal akin to ESRI's 
Geography Network&nbsp;or&nbsp;a simple Google-like plain text 
query.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>The main benefits of this 
approach&nbsp;are:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>- support all standards without forcing the client to 
choose one or the other</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>- avoid&nbsp;&nbsp;having to implement a new data 
entry/storage/display framework for each standard</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>-&nbsp;leverage strengths of a relational model for 
maintaining common attributes such as organisation and person contact 
details</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>This will also remove a disincentive to marriage, thus 
strengthening family values.&nbsp; (I don't want to change my name, because I'm 
going to have to go through and update all of my contact details in the 
metadata). :)</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>I don't see this as orthogonal to the current design path, 
but I don't know that it's entirely in alignment either.&nbsp; 
Your&nbsp;implementation provides a storage mechanism for metadata, and my 
ideal&nbsp;would be to provide a metadata service.&nbsp; Perhaps these could be 
combined somehow, by making resources types for each of the metadata tables 
(MetadataOrganisation, MetadataPerson, MetadataPhone, etc) and then using the 
calls that you have provided to return a resource-specific aggregation 
of&nbsp;these&nbsp;metadata resources, formatted in the well known 
XML&nbsp;standard of choice&nbsp;???</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=478455617-19092006><FONT face=Arial 
color=#0000ff size=2>Jason</FONT></SPAN></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2></FONT>&nbsp;</DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Carsten Hess 
[mailto:carsten.hess@autodesk.com] <BR><B>Sent:</B> Monday, September 18, 2006 
17:45<BR><B>To:</B> dev@mapguide.osgeo.org<BR><B>Subject:</B> RE: [mapguide-dev] 
Metadata<BR></FONT><BR></DIV>
<DIV></DIV><FONT size=2>
<DIV><FONT face=Arial color=#0000ff></FONT><FONT face=Arial 
color=#0000ff></FONT><FONT face=Arial color=#0000ff></FONT><BR></FONT><FONT 
size=2><SPAN style="FONT-SIZE: 10pt">Hi all,</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt">Sorry for joining this 
discussion so late, I just didn't get around to typing an answer about it 
sooner. </SPAN><SPAN style="FONT-SIZE: 10pt">Let me share with all of you the 
thinking behind why &nbsp;I chose the signatures for the stubs in the MapGuide 
Web API the way they are.</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt">Metadata indeed is a tricky 
topic - I totally agree with you Jason. There are several standards and most of 
them are used by a variety of countries but none of them in all. In the US we 
have this law that asks all government agencies to create FGDC metadata for all 
data they create. As a result almost everyone in the US is mainly concerned 
about native FGDC support. </SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">If you go to Europe things are different,&nbsp;no one 
cares about FGDC, they all want ISO ...&nbsp; Then there is the OGC standard 
which is gaining popularity...</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">So, no matter what standard we would choose to add to 
the MapGuide API, it would be the wrong one ...</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">The only thing they all have in common is that they have 
a well defined XML schema representation. So if in the MapGuide API we support a 
general XML schema storage for Metadata we support the most common (if not all) 
of the standards out there and applications can use the schema information in 
the XML content to decide what kind of metadata they are&nbsp; dealing 
with.</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">Then there was the question of whether&nbsp;we should 
make metadata its own resource type or add a special API like I did. The reason 
why&nbsp;I chose a new API ultimately is exactly your concern Jason. Storing 
metadata as a xml&nbsp; blob may not be the right decision as it won't scale and 
all resource data is stored as&nbsp;blob.</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">Ideally metadata could be indexed in a server so it can 
be searched quickly. Since we are using DbXML indexing XML files is really 
easy.&nbsp;Also different MapGuide applications could implement the metadata xml 
differently and still it would sclae up which is much harder if we were to 
choose making it a resource type or hardcode a specific metadata standard. 
</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">So ... anyways ... that is where I am at with my 
thinking ... what do you all think?</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt"></SPAN><SPAN 
style="FONT-SIZE: 10pt">Cheers,</SPAN></FONT></DIV>
<DIV><FONT size=2><SPAN style="FONT-SIZE: 10pt">&nbsp;</SPAN><SPAN 
style="FONT-SIZE: 10pt">&nbsp; Carsten</SPAN></FONT></DIV></BODY></HTML>