Structures with additional infos DescribeFeatureTypeAdvanced Polskie nazwy kolumn oraz informacje o uprawnieniach

Request type GET on API URL (https://biuro.biall-net.pl/SE/version-git/wfs-data.php/default_db/) with params:
?SERVICE=WFS&VERSION=1.0.0
&TYPENAME=p5_default_db:TEST_PERMS
&REQUEST=DescribeFeatureTypeAdvanced"
  • every field gets id of resource in @p5:id_zasobu
  • more efficient-lookup name in @p5:label (from field `DESC_PL` if it is set in CRM_LISTA_ZASOBOW)
  • description in @p5:description (from field `OPIS` if it is set)
  • enum-s are split for different named types
  • @attribute p5:allow_create="true" - option to create new recort with this element set
  • @attribute p5:allow_write="true" - possibility to edit that column
  • @attribute p5:allow_read="false" - no permition to read data from this column
Result:
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:p5="https://biuro.biall-net.pl/wfs" xmlns:p5_default_db="https://biuro.biall-net.pl/wfs/default_db" xmlns:p5_objects="https://biuro.biall-net.pl/wfs/objects" elementFormDefault="qualified" targetNamespace="https://biuro.biall-net.pl/wfs/default_db">
    <xsd:import namespace="http://www.opengis.net/gml" schemaLocation="https://biuro.biall-net.pl/SE/version-git/schema/gml/2.1.2/feature.xsd"/>
    <xsd:complexType name="TEST_PERMSType" p5:web_link="https://biuro.biall-net.pl/SE/version-git/index.php?_route=ViewTableAjax&amp;namespace=default_db/TEST_PERMS">
        <xsd:complexContent>
            <xsd:extension base="gml:AbstractFeatureType">
                <xsd:sequence>
                    <xsd:element minOccurs="1" maxOccurs="1" nillable="true" name="ID" type="xsd:integer" p5:id_zasob="13052" p5:label="Nr"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="L_APPOITMENT_USER" type="xsd:string" p5:id_zasob="24310" p5:label="Osoba odpowiedzialna" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="KATALOG_LINK" type="xsd:string" p5:id_zasob="22580" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="WWW" type="xsd:string" p5:id_zasob="22579" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="ADM_ADMIN_LEVEL" type="p5_default_db:ADM_ADMIN_LEVELType" p5:id_zasob="22267"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="ADM_PASSWD" type="xsd:string" p5:id_zasob="22266" p5:allow_write="true" p5:allow_create="true" p5:allow_read="false"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_STATUS" type="p5_default_db:A_STATUSType" p5:id_zasob="21835" p5:label="Status" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="EMAIL" type="xsd:string" p5:id_zasob="22265" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="ADM_NAME" type="xsd:string" p5:id_zasob="22264" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="PARENT_ID" type="xsd:integer" p5:id_zasob="19727" p5:label="Nr nadrz." p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="OPIS" type="xsd:string" p5:id_zasob="13053" p5:label="Opis" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="the_geom" type="gml:PolygonPropertyType" p5:id_zasob="19771" p5:label="the_geom" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_ADM_COMPANY" type="xsd:string" p5:id_zasob="13058" p5:label="Zapis dla" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_CLASSIFIED" type="xsd:string" p5:id_zasob="13059" p5:label="Odczyt dla" p5:allow_write="true" p5:allow_create="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_RECORD_CREATE_AUTHOR" type="xsd:string" p5:id_zasob="13054" p5:label="Autor rekordu"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_RECORD_CREATE_DATE" type="xsd:string" p5:id_zasob="13055" p5:label="Data rekordu"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_RECORD_UPDATE_AUTHOR" type="xsd:string" p5:id_zasob="13056" p5:label="Autor aktualizacji"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="A_RECORD_UPDATE_DATE" type="xsd:string" p5:id_zasob="13057" p5:label="Data aktualizacji"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="test_date" type="xsd:date" p5:id_zasob="20278" p5:label="test_date" p5:allow_write="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="test_datetime" type="xsd:dateTime" p5:id_zasob="20279" p5:label="test_datetime" p5:allow_write="true"/>
                    <xsd:element minOccurs="0" maxOccurs="1" nillable="true" name="test_time" type="xsd:string" p5:id_zasob="20280" p5:label="test_time" p5:allow_write="true"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:element name="TEST_PERMS" type="default_db:TEST_PERMSType" substitutionGroup="gml:AbstractFeature"/>
    <xsd:simpleType name="ADM_ADMIN_LEVELType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="0"/>
            <xsd:enumeration value="1"/>
            <xsd:enumeration value="2"/>
            <xsd:enumeration value="3"/>
            <xsd:enumeration value="4"/>
            <xsd:enumeration value="5"/>
            <xsd:enumeration value="6"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="A_STATUSType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="DELETED" p5:label="Usunięty"/>
            <xsd:enumeration value="MONITOR"/>
            <xsd:enumeration value="NORMAL" p5:label="Aktywny"/>
            <xsd:enumeration value="OFF_HARD"/>
            <xsd:enumeration value="OFF_SOTF"/>
            <xsd:enumeration value="WAITING" p5:label="Oczekujący"/>
            <xsd:enumeration value="WARNING"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:schema>