# Interdependence

These contracts form a comprehensive NFT marketplace system. Here's how they work together:

**Core Module (SALE):**

The main module handling NFT sales and trading functionality Key features:

NFT listing and sales management Order book implementation for trading Price management Liquidity pool management

Dependencies: Relies on ART20 module for NFT functionality

**NFT Standard (ART20):**

External module (imported) that defines the NFT standard Provides core NFT functionality:

NFT structure and properties Collection management Balance tracking Admin capabilities

**Price Tracking (PRICE\_INDEX):**

Handles price tracking and history Features:

Multiple time intervals (1min, 5min, 15min, 1h, 4h, 1d) OHLCV (Open, High, Low, Close, Volume) data Price history management

**Liquidity Analysis (LIQUIDITY):**

Analytics module for market liquidity Features:

Liquidity metrics calculation Order book depth analysis Bid/ask spread tracking

**Depends on SALE module for order book data**

The interdependence flows primarily from supporting modules (LIQUIDITY, PRICE\_INDEX) to the core SALE module, which in turn depends on the ART20 NFT standard. This architecture allows for:

Separation of concerns:

Core trading logic (SALE) Price tracking (PRICE\_INDEX) Liquidity analysis (LIQUIDITY) NFT standards (ART20)

Modular functionality:

Each module can be upgraded independently Clear boundaries between different aspects of the marketplace Easy to add new features without modifying core logic


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.artinals.com/artinals-protocol/sale-module/interdependence.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
