{"service":"linked-eprel/1.0.0-SNAPSHOT","base":"https://wunderfacts.com/eprel/","upstream":"https://eprel.ec.europa.eu","upstreamKeyConfigured":true,"maxCacheSeconds":86400,"pagination":{"parameters":["offset","count"],"defaultCount":100,"maxCount":100,"maxOffset":500000,"note":"EPREL refuses any listing request at or beyond maxOffset, so a product group larger than that cannot be enumerated in full."},"license":"https://ec.europa.eu/assets/move-ener/eprel/EPREL%20Public/Public%20API%20Term%20and%20Conditions/API_TERMS_AND_CONDITIONS_EN.pdf","routes":[{"path":"/product/{eprelRegistrationNumber}","description":"One energy-labelled product model. The registration number is the one printed on the label; the product group is not needed.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html","json"]},{"path":"/product/{productGroup}/{eprelRegistrationNumber}","description":"The shape of EPREL's own website URLs; redirects (301) to the canonical /product/{id}.","requiresUpstreamKey":false,"enabled":true,"formats":[]},{"path":"/product/","description":"LDP collection of the per-group product containers. EPREL publishes no cross-product-group listing, so the registry cannot be enumerated as one collection of products.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/group/","description":"LDP collection of the product groups.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/group/{productGroup}/products?offset&count","description":"Paged container (LDP and Hydra) over one product group's models. offset is 0-based; count is capped at 100.","requiresUpstreamKey":true,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/search?group&energyClass&modelIdentifier&supplierOrTrademark&offset&count","description":"Find models without holding a registration number. A 'group' is REQUIRED: EPREL has no cross-product-group search. Only three filters were MEASURED to work -- energyClass, modelIdentifier and supplierOrTrademark; the rest name real record fields and are silently discarded upstream, so they are refused here. The answer is {query}#members, a paged hydra:Collection; offset and count page it (at most 100 per page). Matching: energyClass is exact and case-sensitive (A matches, a matches nothing); a comma-separated list is an OR (A,B). modelIdentifier is case-insensitive substring of the model identifier (MV46 finds SMV46IX04D); * is a wildcard (SMV*X04D) and spaces are literal, so the result is a candidate set. supplierOrTrademark is case-insensitive substring of the supplier name or trademark (EG finds both AEG and ELEKTRABREGENZ); * is a wildcard and spaces are literal, so the result is a candidate set. Filters combine with AND. A filter given more than once is refused, because upstream would silently keep only one of the values.","requiresUpstreamKey":true,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/supplier/{organisationGuid}","description":"A supplier, assembled from what this wrapper has observed. EPREL publishes no supplier endpoint, so a guid resolves only once some product of that supplier has been fetched; the 404 offers ?via={registrationNumber} to make it resolvable. Links the models search, scoped to the one group the supplier was learned in.","requiresUpstreamKey":true,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/supplier/","description":"LDP collection of the suppliers this wrapper instance has learned. Partial by construction: EPREL publishes no supplier listing.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/act/","description":"LDP collection of the curated implementing acts.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/act/{implementingAct}","description":"One implementing act, as an ELI-linked concept.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/cl/","description":"LDP collection of the codelists.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/cl/{scheme}","description":"A codelist: product groups and implementing acts.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/index","description":"Dataset and software-agent self-description.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/vocab","description":"Terms coined by this wrapper.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/shapes/","description":"Container of the SHACL shapes documents.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/shapes/{product|supplier|concept|container}.shapes.ttl","description":"SHACL shapes describing the served documents, as static Turtle. product.shapes.ttl imports the others.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl"]},{"path":"/shapes/eprel.shex","description":"The same shapes as one ShEx schema, generated from the SHACL.","requiresUpstreamKey":false,"enabled":true,"formats":["shex"]},{"path":"/shapes/eprel.tree.ttl","description":"The containers and documents as Solid shape trees, whose st:shape points into eprel.shex.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl"]},{"path":"/manager/{path}","description":"The Solid shape tree manager of the resource at {path}, e.g. manager/product/{id}: one st:Assignment naming its tree in shapes/eprel.tree.ttl, its root, and the focus node and shape. Every managed resource links its manager with Link rel=\"https://w3id.org/shapetrees#managedBy\". Negotiated by Accept only.","requiresUpstreamKey":false,"enabled":true,"formats":["ttl","nt","rdf","jsonld","html"]},{"path":"/routes","description":"This manifest.","requiresUpstreamKey":false,"enabled":true,"formats":["json"]}]}