RDFLib / prez

Prez is a data-configurable Linked Data API framework that delivers profiles of Knowledge Graph data according to the Content Negotiation by Profile standard.
BSD 3-Clause "New" or "Revised" License
18 stars 7 forks source link

Add predicate listing endpoint #160

Closed recalcitrantsupplant closed 9 months ago

recalcitrantsupplant commented 9 months ago

The listing predicates are now provided at /annotation-predicates as an RDF Linked List.

Example response with default prez config:

@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix prez: <https://prez.dev/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

prez:AnnotationPropertyList prez:descriptionList ( skos:definition dcterms:description schema:description ) ;
    prez:labelList ( skos:prefLabel dcterms:title rdfs:label schema:name ) ;
    prez:provenanceList ( dcterms:provenance ) .

closes #151

jamiefeiss commented 9 months ago

Would it make more sense to include this info in the root / endpoint instead?

Here's the current response from /:

<http://localhost:8000> prez:currentTBOXCacheSize 3112,
        3264,
        3277 ;
    prez:enabledPrezFlavour [ a prez:ProfilesPrez ;
            prez:link "/p" ],
        [ a prez:CatPrez ;
            prez:availableSearchMethod prez:exactMatch,
                prez:jenaFTName ;
            prez:link "/c" ],
        [ a prez:VocPrez ;
            prez:availableSearchMethod prez:exactMatch,
                prez:jenaFTName,
                prez:skosPrefLabel,
                prez:skosWeighted ;
            prez:link "/v" ],
        [ a prez:SpacePrez ;
            prez:availableSearchMethod prez:exactMatch,
                prez:jenaFTName ;
            prez:link "/s" ] ;
    prez:version "0.1.0.dev0" .

Also do we need to update this response? It still contains old search method config, and the tbox size adds another triple to this response every time it changes.

recalcitrantsupplant commented 9 months ago

What if anything from the current root response is being used? If nothing, we can populate with endpoint info from the endpoint reference data and also the annotation data.

jamiefeiss commented 9 months ago

With the current search changes, only the version and (soon) the enabled prez flavours. Sounds good to include the endpoint reference data as well.

recalcitrantsupplant commented 9 months ago

Too many commits in PR after rebasing, hard to see changes clearly. Will create new PR.