Back to list
tcapelle

leychile

by tcapelle

A poor's layers Harvey

0🍴 0📅 Dec 29, 2025

SKILL.md


Ley Chile API Skill

Use this skill to query Chilean legislation from the Biblioteca del Congreso Nacional (BCN).

Overview

This is a free, public API - no authentication required. It provides access to Chilean laws, decrees, regulations, legal norms, and congressional information via Linked Open Data.

API Methods

1. SPARQL Endpoint (Primary)

Main data access method at https://datos.bcn.cl/sparql.

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=YOUR_SPARQL_QUERY" \
  -H "Accept: application/json" \
  --max-time 30

2. Resource URIs (Direct Data Access)

Access individual resources in JSON or RDF format:

# JSON format
curl -sL "https://datos.bcn.cl/recurso/cl/ley/330/datos.json"

# RDF format
curl -sL "https://datos.bcn.cl/recurso/cl/ley/330/datos.rdf"

URI Pattern: https://datos.bcn.cl/recurso/cl/{type}/{path}/datos.{format}

Types include: ley, dfl, dto, res, etc.


SPARQL Query Examples

Query Norms (Laws, Decrees, etc.)

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=
PREFIX bcnnorms: <http://datos.bcn.cl/ontologies/bcn-norms#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>

SELECT ?norma ?label ?title ?leychileCode
WHERE {
  ?norma a bcnnorms:Norm .
  OPTIONAL { ?norma rdfs:label ?label }
  OPTIONAL { ?norma dc:title ?title }
  OPTIONAL { ?norma bcnnorms:leychileCode ?leychileCode }
}
LIMIT 10" \
  -H "Accept: application/json"

Find Law by idNorma (LeyChile Code)

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=
PREFIX bcnnorms: <http://datos.bcn.cl/ontologies/bcn-norms#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?norma ?label
WHERE {
  ?norma a bcnnorms:Norm .
  ?norma bcnnorms:leychileCode ?code .
  FILTER(?code = 172986)
  OPTIONAL { ?norma rdfs:label ?label }
}
LIMIT 5" \
  -H "Accept: application/json"

Search Law Projects (Bills)

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=
PREFIX bcn: <http://datos.bcn.cl/ontologies/bcn-resources#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?proyecto ?label
WHERE {
  ?proyecto a bcn:ProyectoDeLey .
  OPTIONAL { ?proyecto rdfs:label ?label }
}
LIMIT 10" \
  -H "Accept: application/json"

Get Parliamentary Sessions

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=
PREFIX congress: <http://datos.bcn.cl/ontologies/bcn-congress#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?sesion ?label
WHERE {
  ?sesion a congress:SesionParlamentaria .
  OPTIONAL { ?sesion rdfs:label ?label }
}
LIMIT 10" \
  -H "Accept: application/json"

List Available Entity Types

curl -s 'https://datos.bcn.cl/sparql' \
  --data-urlencode "query=SELECT DISTINCT ?type WHERE { ?s a ?type . FILTER(CONTAINS(STR(?type), 'bcn')) } LIMIT 100" \
  -H "Accept: application/json"

Ontologies/Namespaces

PrefixNamespaceDescription
bcn-normshttp://datos.bcn.cl/ontologies/bcn-norms#Norms (Norm, leychileCode, publishDate)
bcn-resourceshttp://datos.bcn.cl/ontologies/bcn-resources#Legislative resources (ProyectoDeLey, Articulo)
bcn-congresshttp://datos.bcn.cl/ontologies/bcn-congress#Congressional entities (SesionParlamentaria)
bcn-biographieshttp://datos.bcn.cl/ontologies/bcn-biographies#Biographies (Senador, Diputado)
dchttp://purl.org/dc/elements/1.1/Dublin Core (title, language)
rdfshttp://www.w3.org/2000/01/rdf-schema#RDF Schema (label)

Key Properties (bcn-norms)

PropertyDescription
bcnnorms:leychileCodeThe idNorma used in LeyChile URLs
bcnnorms:publishDatePublication date
bcnnorms:promulgationDatePromulgation date
bcnnorms:hasNumberLaw/decree number
bcnnorms:createdByIssuing ministry/organism
bcnnorms:hasHtmlDocumentLink to LeyChile HTML page

Common Law IDs (leychileCode / idNorma)

LawidNormaURI Path
Constitucion242302-
Codigo Civil172986/cl/dfl/ministerio-de-justicia/2000-05-30/1
Codigo Penal1984-
Codigo del Trabajo207436-
Ley de Proteccion de Datos (19.628)141599-

Web Navigation (Human Browsing)

For viewing laws in a browser:

https://www.bcn.cl/leychile/navegar?idNorma={ID_NORMA}

Historical version:

https://www.bcn.cl/leychile/navegar?idNorma={ID_NORMA}&idVersion={YYYY-MM-DD}

Note: These pages are JavaScript-rendered. Use SPARQL or Resource URIs for programmatic access.


Performance Notes

  • Use --max-time 30 with curl for safety
  • Queries for ProyectoDeLey and SesionParlamentaria are fast
  • Queries with FILTER on text can be slow
  • Use STR(?variable) instead of LCASE(?variable) in FILTER to avoid type errors

Response Format

SPARQL JSON Response

{
  "head": { "vars": ["norma", "label"] },
  "results": {
    "bindings": [
      {
        "norma": { "type": "uri", "value": "http://datos.bcn.cl/recurso/..." },
        "label": { "type": "literal", "value": "Ley 330" }
      }
    ]
  }
}

Resource URI JSON Response

{
  "http://datos.bcn.cl/recurso/cl/ley/.../330/es@1896-01-29": {
    "http://www.w3.org/1999/02/22-rdf-syntax-ns#type": [...],
    "http://www.w3.org/2000/01/rdf-schema#label": [...],
    "http://datos.bcn.cl/ontologies/bcn-norms#leychileCode": [
      { "type": "literal", "value": 22181 }
    ]
  }
}

Deprecated/Unavailable APIs

Ley Facil API (401 Unauthorized as of Dec 2025)

# NO LONGER WORKS
curl -s "https://www.bcn.cl/leyfacil/recurso/trabajo"

XML Export API (401 Unauthorized)

# NO LONGER WORKS
curl -s "https://www.leychile.cl/Consulta/obtxml?opt=7&idNorma=172986"

References

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon