This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description
Geoserver Schema
================
A service that allows users to upload/download the geoserver schema.xsd files associated with each layer. More specifically, gsschema is a [Django][1] application which uses the [GeoServer][2] rest api to retrieve the list of layers and then associate a layer with a schema file provided by the user. The schema.xsd file describes a featureType by listing all its attributs as well as the type associated with attribute. The GeoSHAPE project uses the schema file to specify the drop down choices for a given attribute as well as an optional way to indicate that a particular attribute should be populated using datetime picker in [MapLoom][6] (web client) and [Arbiter][5] (mobile client).It is an open-source application that has been developed under the [ROGUE][4] project and is part of the [GeoSHAPE][3] eco-system.

Notes
=============
- A "normal" schema can be defined as such:

*Hospitals1*
```
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:geonode="http://www.geonode.org/" xmlns:gml="http://www.opengis.net/gml" elementformdefault="qualified" targetnamespace="http://www.geonode.org/">
<xsd:import namespace="http://www.opengis.net/gml" schemalocation="http://&lt;VM IP Address&gt;/geoserver/schemas/gml/3.1.1/base/gml.xsd"/>
<xsd:complextype name="Hospitals1Type">
<xsd:complexcontent>
<xsd:extension base="gml:AbstractFeatureType">
<xsd:sequence>
<xsd:element maxoccurs="1" minoccurs="0" name="geometry" nillable="true" type="gml:PointPropertyType"/>
<xsd:element maxoccurs="1" minoccurs="0" name="name" nillable="true" type="xsd:string"/>
<xsd:element maxoccurs="1" minoccurs="0" name="status" nillable="true">
<xsd:simpletype>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="open"/>
<xsd:enumeration value="closed"/>
</xsd:restriction>
</xsd:simpletype>
</xsd:element>
<xsd:element maxoccurs="1" minoccurs="0" name="number_of_beds_available" nillable="true" type="xsd:long"/>
<xsd:element maxoccurs="1" minoccurs="0" name="number_of_beds_total" nillable="true" type="xsd:long"/>
<xsd:element maxoccurs="1" minoccurs="0" name="fotos" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexcontent>
</xsd:complextype>
<xsd:element name="Hospitals1" substitutiongroup="gml:_Feature" type="geonode:Hospitals1Type"/>
</xsd:schema>
```

- The main lines that are going to be edited are the 'xsd:element' sections.
- The attribute 'type' inside the 'xsd:element' has many options, such as the following:
- 'xsd:date'
- 'xsd:dateTime'
- 'xsd:long'
- 'xsd:string'
- Any other supported 'xsd' type.

API Quick Guide
=============
Since schemas are already created (and each layer is using their own respective schema on MapLoom), GSSchema gives the user the ability to edit any available schema.
To start, you can log onto GSSchema:

*The user **_must_** be logged into GeoSHAPE.*

**example: http://192.168.99.100/gsschema/**

**/gsschema/**
-------------
You will be presented with a dropdown list, containing each layer that Geonode holds.
One a layer is selected, a few action buttons will be presented. These buttons are listed in order of a normal use of GSSchema.

*Describe FeatureType*
-------
This button will allow you to download the schema that is currently being used for the selected layer. After downloading the schema, any text editor can be used to edit the schema and be uploaded with the next button. Editing tips will be covered in [this document][7].

*Upload*
-------
Once a file is chosen for upload, this button will be enabled. This will upload the schema to Geoserver (while immediately reflecting on MapLoom) and make a local backup on the machine. This will then enable the **Download** and **Remove** buttons if it is successfully uploaded.

- Expected results for upload:
- Successful
- Error Uploading: "Invalid file" (Non-XML format, not '.xsd')
- Error Uploading: "Invalid schema"

*Download*
------
This button allows you to download a schema that you previously uploaded through /gsschema/. This schema is local to the machine, and if no schemas have been uploaded, this button will be disabled.

*Remove*
-------
This will remove the currently selected layer's schema that is *local to the machine*. It will prompt the user with a window confirming if they want to remove the file. This button will be disabled if there is not a previous schema uploaded for that layer.



[1]: http://djangoproject.com "Django"
[2]: http://geoserver.org "GeoServer"
[3]: http://geoshape.org "GeoSHAPE"
[4]: http://github.com/rogue-jctd/ "ROGUE"
[5]: http://github.com/ROGUE-JCTD/Arbiter-Android "Arbiter"
[6]: http://github.com/ROGUE-JCTD/MapLoom "MapLoom"
[7]: https://docs.google.com/document/d/1gz0qHIhY0LT2xceRX8gpXDCwbOxshzmbLXCu48Tz-MM/edit
Release History

Release History

0.1b2

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1b1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1a6

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1-alpha5

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1-alpha4

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1-alpha3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1-alpha2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1a1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
django-gsschema-0.1b2.tar.gz (609.2 kB) Copy SHA256 Checksum SHA256 Source Aug 21, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting