Quick Search
Browse
Pages
Blog
Labels
Attachments
Mail
Advanced
What’s New
Space Directory
Feed Builder
Keyboard Shortcuts
Confluence Gadgets
Log In
Sign Up
Dashboard
GeoTools
Copy Page
You are not logged in. Any changes you make will be marked as
anonymous
. You may want to
Log In
if you already have an account. You can also
Sign Up
for a new account.
This page is being edited by
.
Paragraph
Paragraph
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Preformatted
Quote
Bold
Italic
Underline
More colours
Strikethrough
Subscript
Superscript
Monospace
Clear Formatting
Bullet list
Numbered list
Outdent
Indent
Align left
Align center
Align right
Link
Table
Insert
Insert Content
Image
Link
Attachment
Symbol
Emoticon
Wiki Markup
Horizontal rule
tinymce.confluence.insert_menu.macro_desc
Info
JIRA Issue
Status
Gallery
Tasklist
Table of Contents
Other Macros
Page Layout
No Layout
Two column (simple)
Two column (simple, left sidebar)
Two column (simple, right sidebar)
Three column (simple)
Two column
Two column (left sidebar)
Two column (right sidebar)
Three column
Three column (left and right sidebars)
Undo
Redo
Find/Replace
Keyboard Shortcuts Help
<table class="confluenceTable"><tbody><tr><th class="confluenceTh"><p>Contact:</p></th><td class="confluenceTd"><p><a class="confluence-link confluence-userlink" data-username="username" href="/display/~username" data-linked-resource-id="41226" data-linked-resource-type="userinfo" username="username" data-linked-resource-default-alias="full name" data-base-url="http://docs.codehaus.org">Niels</a> Charlier</p></td></tr><tr><th class="confluenceTh"><p>Tracker:</p></th><td class="confluenceTd"><a href="http://jira.codehaus.org/browse/GEOT-4344">GEOT-4344</a></td></tr><tr><th class="confluenceTh"><p>Tagline:</p></th><td class="confluenceTd"><p><table class="wysiwyg-macro" data-macro-name="excerpt" data-macro-parameters="atlassian-macro-output-type=INLINE" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2V4Y2VycHQ6YXRsYXNzaWFuLW1hY3JvLW91dHB1dC10eXBlPUlOTElORX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"> </td></tr></table></p></td></tr></tbody></table><table class="wysiwyg-macro" data-macro-name="section" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e3NlY3Rpb259&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><table class="wysiwyg-macro" data-macro-name="column" data-macro-parameters="width=70%" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvbHVtbjp3aWR0aD03MCV9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e3RvY30&locale=en_GB&version=2" data-macro-name="toc"></td></tr></table><table class="wysiwyg-macro" data-macro-name="column" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvbHVtbn0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>Children:</p><img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e2NoaWxkcmVufQ&locale=en_GB&version=2" data-macro-name="children"></td></tr></table></td></tr></table><h1>Description</h1><p>The idea is to split the app-schema module in three:</p><ul style="list-style-type: square;"><li>The first part would contain everything that helps with complex features in general and can be moved to gt-main: mainly builders</li><li>The second part would contain everything that helps with complex features in general and depends on XSD: evaluating filters against them (property accessor, x-path evaluation), building complex feature types from XSD. These classes do not rely on specific schemes like GML, etc... apart form XS.</li><li>The third part will contain anything that is app-schema specific: creating complex feature datastores with <em>mapping files</em>.</li></ul><p>The third part would continue as the gt-app-schema module. The first part will be moved to gt-main. More specifically, the following classes will be moved:</p><ul><li>org.geotools.feature.TypeBuilder</li><li>org.geotools.util.ComplexAttributeConverterFactory</li><li>org.geotools.feature.AttributeBuilder (PARTLY)</li><li>org.geotools.feature.Types (PARTLY)</li></ul><p>The second would split off and become a new module 'gt-complex'. More specifically, this 'gt-complex' module will consist of the following classes that are now in the gt-app-schema module.</p><ul style="list-style-type: square;"><li>org.geotools.filter.expression.FeatureProperty + complete org.geotools.feature.xpath package</li><li>complete org.geotools.feature.type package</li><li>org.geotools.data.complex.filter.XPath (PARTLY)</li><li>org.geotools.data.complex.FeatureTypeRegistry (PARTLY) + depending classes (for building types from xsd)</li><li>org.geotools.data.complex.config.EmfAppSchemaReader</li></ul><p>Considering the 'partly' ported classes.</p><ul><li>AttributeBuilder - will still need an extended version in app-schema to support the NonFeatureTypeProxy which uses mappings</li><li>XPath , Types - are just classes of different static methods that need to be split in two</li><li>FeatureTypeRegistry will be made more generic using a helper interface 'FeatureTypeRegistryHelper, app-schema can have its specific implementation</li></ul><p>The gt-complex module will have a dependency on the module gt-app-schema-resolver.</p><h1>Status</h1><p>This proposal is currently being voted on:</p><ul><li><a class="confluence-link confluence-userlink" data-username="aaime" href="/display/~aaime" data-linked-resource-id="787" data-linked-resource-type="userinfo" username="aaime" data-linked-resource-default-alias="Andrea Aime" data-base-url="http://docs.codehaus.org">Andrea Aime</a> +1</li><li><a class="confluence-link confluence-userlink" data-username="bencaradocdavies" href="/display/~bencaradocdavies" data-linked-resource-id="60850191" data-linked-resource-type="userinfo" username="bencaradocdavies" data-linked-resource-default-alias="Ben Caradoc-Davies" data-base-url="http://docs.codehaus.org">Ben Caradoc-Davies</a> +1</li><li><a class="confluence-link confluence-userlink" data-username="christian.mueller@nvoe.at" href="/display/~christian.mueller@nvoe.at" data-linked-resource-id="75366406" data-linked-resource-type="userinfo" username="christian.mueller@nvoe.at" data-linked-resource-default-alias="Christian Mueller" data-base-url="http://docs.codehaus.org">Christian Mueller</a></li><li><a class="confluence-link confluence-userlink" data-username="ianturton" href="/display/~ianturton" data-linked-resource-id="800" data-linked-resource-type="userinfo" username="ianturton" data-linked-resource-default-alias="Ian Turton" data-base-url="http://docs.codehaus.org">Ian Turton</a> +1</li><li><a class="confluence-link confluence-userlink" data-username="jdeolive" href="/display/~jdeolive" data-linked-resource-id="14894" data-linked-resource-type="userinfo" username="jdeolive" data-linked-resource-default-alias="Justin Deoliveira" data-base-url="http://docs.codehaus.org">Justin Deoliveira</a></li><li><a class="confluence-link confluence-userlink" data-username="jive" href="/display/~jive" data-linked-resource-id="1159" data-linked-resource-type="userinfo" username="jive" data-linked-resource-default-alias="Jody Garnett" data-base-url="http://docs.codehaus.org">Jody Garnett</a></li><li><a class="confluence-link confluence-userlink" data-username="simboss" href="/display/~simboss" data-linked-resource-id="10743" data-linked-resource-type="userinfo" username="simboss" data-linked-resource-default-alias="Simone Giannecchini" data-base-url="http://docs.codehaus.org">Simone Giannecchini</a></li></ul><h1>Tasks</h1><p><em>This section is used to make sure your proposal is complete (did you remember documentation?) and has enough paid or volunteer time lined up to be a success</em></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh"><p> </p></th><td class="confluenceTd"><p>no progress</p></td><th class="confluenceTh"><p><img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /></p></th><td class="confluenceTd"><p>done</p></td><th class="confluenceTh"><p><img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /></p></th><td class="confluenceTd"><p>impeded</p></td><th class="confluenceTh"><p><img class="emoticon emoticon-warning" data-emoticon-name="warning" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/warning.png" alt="(warning)" title="(warning)" /></p></th><td class="confluenceTd"><p>lack mandate/funds/time</p></td><td class="confluenceTd"><p><img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /></p></td><td class="confluenceTd"><p>volunteer needed</p></td></tr></tbody></table><ol><li><img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> NC: move/copy all the classes (specified above) into new module 'gt-complex'</li><li><img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> NC: refactor app-schema to use the gt-complex module and the new featuretyperegistry</li><li><img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> NC: Pull request for <a class="external-link" href="http://jira.codehaus.org/browse/GEOT-4344" rel="nofollow">GEOT-4344</a> <br /><ul><li><a href="https://github.com/geotools/geotools/pull/88">https://github.com/geotools/geotools/pull/88</a> complex model refactoring</li></ul></li><li>NC: review the geotools documentation and update<ul><li>upgrade instructions for 9.x will need to mention this new dependency</li></ul></li></ol><h1>API Changes</h1><p>The API will not change because of this.</p><h2>Documentation Changes</h2><p>gt-complex should get its own page in the GeoTools User Documentation.<em> </em>The application-schema documentation page says "Key to the configuration of the app-schema module is the <em>mapping file</em>". The gt-complex module provides support for complex features but has nothing to do with mapping files.</p><p><em><br /></em></p><p><em><br /></em></p><p><em><br /></em></p>
Please type the word appearing in the picture.
Attachments
Labels
Location
Watch this page
< Edit
Preview >
Loading…
Save
Cancel
Next hint
search
attachments
weblink
advanced