Custom transformer til at hente skema for alle datasæt i det nye Datafordeler endpoint for fleksibel opslagslogik.
Læs mere her: https://github.com/sweco-se/30002416-DAFQL/blob/main/
Usage
Let at bruge, du skal oprette adgang til Datafordelerens URL for fleksibel opslagslogik, før du kan bruge denne transformer, se Parametre nedenfor.
Konfiguration
Parametre
api-key
For at bruge denne custom transformer skal du have en API-nøgle for at få adgang til Datafordelarens nye API til fleksibel opslagslogik. Denne API-nøgle indtastes i den webforbindelse, der følger med denne custom transformer.
URL to DAF Flexible schema
Hvis URL'en til fleksibel opslagslogik ændres, skal du ændre den parameter, der indeholder denne URL. Lige nu er denne URL: https://graphql.datafordeler.dk/flexible/v1/schema
Filter
Der er to parametre til filtrering af, hvilke datasæt og enheder du vil hente skemaet for
"Dataset to get schema for"
er et filter for, hvilket register i Datafordeleren du vil have skemaoplysninger om.
"Entity to get schema for"
er et filter for, hvilken entitet du vil have skemaoplysninger om.
Disse to filtre kan kombineres på enhver måde.
Hvis du ikke vælger noget filter, får du skemaet for alle datasæt og alle deres entiteter.
Hvis du kun vælger en værdi for det første filter, får du skemaet for alle entiteter i det pågældende datasæt.
Hvis du kun vælger en værdi for det andet filter, får du skemaet for alle entiteter i alle datasæt, der har samme navn, f.eks. findes Bygning i både BBR, DS og GEODKV.
Hvis du vælger en værdi for begge filtre, får du kun skemaet for den pågældende entitet i det pågældende datasæt.
Input Ports
Ingen indgangsporte.
Output Ports
Attributes
De attributter, der hører til hver entitet, samles i attributten AttributeList, så de nemt kan kopieres til din GraphQL-forespørgsel.
AttributeInfo
Alle attributter med oplysninger om, hvilken enhed de tilhører, og hvilken datatype attributten har.
NB: Det er vigtigt at bemærke attributter af typen Spatial<...>, som er geometrier. For disse skal du angive, hvilke underattributter du vil medtage, nemlig wkt, crs, type og dimension. Et eksempel på denne type er SpatialPointEpsg25832Type, som henviser til et punkt i EPSG:25832-koordinatsystemet. I en GraphQL-query formateres en rumlig attribut som følger:
<spatial attribute name> {
wkt
crs
type
dimension
}
RelationshipInfo
detaljerede oplysninger om de relationer, der findes for de entiteter, du har filtreret på. Du får attributterne:
Entity Name: det fulde navn på entiteten.
Cardinality: relationens kardinalitet.
Relation Type: hvilken type sammenkobling relationen er.
Entity + Field: den entitet og det attribut, der bruges i relationen.
Fremmed enhed + felt: entiteten og attributten i måltabellen for relationen.
Relationship Name
navnet på relationen; dette er det navn, der indtastes i GraphQL for at kalde relationen. I din forespørgsel skal du også angive, hvilke attributter i måltabellen du vil hente. Dette formateres i GraphQL-forespørgsel i henhold til formatet:
relation {
attribut 1
attribut 2
attribut 3
}
BEMÆRK: For to-mange-relationer bliver håndteringen af GraphQL-forespørgsler og deres resultater mere kompleks.
Relationer
De relationer, der hører til hver entitet, samles i attributten Relationship names, så de nemt kan kopieres til din GraphQL-forespørgsel.
<Rejected>
Hvis URL'en til fleksibel opslagslogik ikke kan tilgås, vil du modtage en fejlmeddelelse, der forklarer årsagen. Hvis serveren slet ikke kan tilgås, vil du også modtage en meddelelse, der beder dig om at kontrollere, om URL'en er ændret. Hvis dette er tilfældet, skal du erstatte parameteren "URL til DAF Flexible" med den nye URL.
Disclaimer
Dette er kun en demo. Hvis du vil bruge dette i produktion, er du ansvarlig for at foretage de nødvendige justeringer.
Would you like to know more? Click here to find out more details!

