Concept Repository

We are creating a public repository for concepts in comparative law to collect concepts in the field and provide a foundation for concept integration. Hosted here on GitHub, the repository will include topic sets from publishers and cataloguers and related document sets indexed by these topics. It will also include interactive tools we are developing to explore these vocabularies and documents.

The repository will be a resource for scholars to explore concepts related to their own, compare how varied researchers have conceptualized similar topics, build new vocabularies around specific topics, and find these topics in related constitutional, consultation, and court documents.

If you have topic sets, corpora, or data in comparative law that could be a good fit for this concept repository, please contact Zachary Elkins, Roy Gardner, and Ashley Moran. We look forward to talking with you and learning about your work!

Demos

Sartori Lite

This demo allows users to compare any input concept against the CCP ontology using semantic similarity. Everything happens in-browser thanks to the USE4 Lite model from TensorFlow.js. We plan to add additional topic sets, functionality, and tools as we expand the platform. In the meantime, you can search for similar concepts in the CCP ontology on our demo Sartori Lite.

Documentation

API Backend

This documentation describes the prototype of the REST Application Programming Interface (API) that will serve as a backend for our public-facing concept repository and interactive tools. It will be hosted on a University of Texas server and will execute computationally demanding tasks in our online tools. These tasks include representing user-provided texts as embeddings, computing semantic similarity, creating clusters of user-provided texts, and querying corpora for top matches. To achieve scalability and efficiency, the API uses the FastAPI toolkit and leverages k-nearest neighbors (k-NN) indexing via the nmslib library. In the current implementation, most tasks can be performed in a fraction of a second. View our API documentation.