Skip to main content

DAF2_SchemaInfo

  • December 5, 2025
  • 0 replies
  • 8 views

fmelizard
Safer
Forum|alt.badge.img+21
FME Hub user hansh just uploaded a new transformer to the FME Hub.

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!
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.