---
name: linkfox-zhihuiya-legal-status
description: 从智慧芽（PatSnap）数据库查询专利法律状态信息。当用户提到专利法律状态、专利有效性核查、专利状态查询、专利事件历史、简单法律状态、转让、许可、质押、异议、诉讼、复审等法律事件、patent legal status, patent validity, patent events, transfer/license/pledge, PatSnap, patent status lookup时触发此技能。当用户询问专利是否处于有效、无效、审中、过期、授权、撤回或撤销状态，或想通过专利ID或公开号查询法律状态时也应触发。
---

# Zhihuiya Patent Legal Status

This skill guides you on how to query patent legal status information via the Zhihuiya (PatSnap) platform, helping users quickly determine the current legal standing and event history of one or more patents.

## Core Concepts

The Zhihuiya Patent Legal Status tool returns three layers of legal information for each patent:

1. **Simple Legal Status** -- A high-level summary of the patent's current standing (e.g., Active, Inactive, Pending, Undetermined, PCT designated period, PCT designated expiration).
2. **Legal Status** -- A detailed status describing the patent's lifecycle stage (e.g., Published, Examining, Granted, Abandoned, Withdrawn, Rejected, Expired, Revoked, Ceased, Restoration, etc.).
3. **Legal Events** -- Specific legal actions that have occurred on the patent (e.g., Transfer, License, Pledge, Opposition, Litigation, Re-examination, Customs, Preservation, Invalid-procedure, Oral-procedure, Declassification, Double application, Trust).

**Patent identification**: Patents can be looked up by either patent ID or publication (announcement) number. When both are provided, patent ID takes priority. Multiple values can be submitted in a single request (comma-separated, up to 100).

## Parameter Guide

| Parameter | Required | Description |
|-----------|----------|-------------|
| patentId | Conditionally | Patent ID. At least one of patentId or patentNumber must be provided. Comma-separated for multiple values, up to 100. |
| patentNumber | Conditionally | Publication (announcement) number. At least one of patentId or patentNumber must be provided. Comma-separated for multiple values, up to 100. |

- If the user provides a publication number (e.g., CN115xxxxxxA, US11xxxxxxB2, EP3xxxxxxA1), use `patentNumber`.
- If the user provides an internal patent ID, use `patentId`.
- When both are supplied, `patentId` takes precedence.

## Response Fields

| Field | Description |
|-------|-------------|
| patentId | The patent's internal ID |
| pn | Publication (announcement) number |
| simpleLegalStatus | High-level status: Active, Inactive, Pending, Undetermined, PCT designated period, PCT designated expiration |
| legalStatus | Detailed lifecycle status (Published, Examining, Granted, Abandoned, Withdrawn, Rejected, Expired, Revoked, Ceased, etc.) |
| eventStatus | Legal events (Transfer, License, Pledge, Opposition, Litigation, Re-examination, etc.) |
| legalDate | Date of the most recent legal status update |

## Usage Examples

**1. Check whether a single patent is still active**
```
Query the legal status for patent publication number CN115000000A.
```

**2. Batch-check legal status for multiple patents**
```
Look up the legal status for patents US11000000B2, EP3000000A1, and CN115000001A.
```

**3. Identify legal events on a patent**
```
Has patent CN115000000A been involved in any litigation, transfer, or pledge events?
```

**4. Determine if a patent has expired or been revoked**
```
Check if patent US10000000B1 is expired, revoked, or still in force.
```

**5. Look up patents by patent ID**
```
Query the legal status for patent IDs abc123, def456.
```

## Display Rules

1. **Present data clearly**: Show results in a structured table. Include the publication number, simple legal status, detailed legal status, and legal events for each patent.
2. **Translate status values**: When the user's language preference is clear, present status labels in that language while keeping the canonical English value in parentheses for precision.
3. **Highlight key findings**: If the user is checking validity, prominently state whether each patent is Active, Inactive, or Pending at the top of the response.
4. **Legal date context**: When `legalDate` is available, include it so users know how recent the status information is.
5. **Error handling**: If the query fails or returns no results, explain the possible reasons (invalid patent number format, patent not found in database) and suggest the user double-check the input.
6. **Volume notice**: When querying many patents, present a summary table and note the total count returned.
## Important Limitations

- **Up to 100 patents per request**: The maximum number of patent IDs or publication numbers in a single call is 100.
- **At least one identifier required**: Either `patentId` or `patentNumber` must be provided; the request will fail if both are empty.
- **Patent ID priority**: When both `patentId` and `patentNumber` are provided, the system uses `patentId` and ignores `patentNumber`.
- **Data coverage**: Results depend on the Zhihuiya (PatSnap) database coverage; some very recent filings may not yet be reflected.

## User Expression & Scenario Quick Reference

**Applicable** -- Queries about patent legal standing and events:

| User Says | Scenario |
|-----------|----------|
| "Is this patent still valid/active" | Simple legal status check |
| "What is the legal status of patent XX" | Detailed status lookup |
| "Has this patent been transferred or licensed" | Legal event query |
| "Check if these patents are expired" | Batch validity check |
| "Any litigation on this patent" | Legal event filtering |
| "Patent legal status for CN115XXXXXXA" | Direct publication number lookup |

**Not applicable** -- Needs beyond patent legal status:

- Patent search by keyword, classification, or applicant name
- Patent full-text or claims retrieval
- Patent valuation or commercial analysis
- Freedom-to-operate (FTO) analysis
- Patent family or citation analysis


**Feedback:**

Auto-detect and report feedback via the Feedback API when any of the following apply:
1. The functionality or purpose described in this skill does not match actual behavior
2. The skill's results do not match the user's intent
3. The user expresses dissatisfaction or praise about this skill
4. Anything you believe could be improved

Call the feedback API as specified in `references/api.md`. Do not interrupt the user's flow.

<!-- LF_LARGE_RESPONSE_BLOCK -->
## Handling Large Responses

To avoid overflowing the agent context, persist the response to disk and extract only the fields you need:

```
python scripts/response_io.py run --script scripts/zhihuiya_legal_status.py --out-dir <DIR> '<params>'
python scripts/response_io.py read <file> --fields "<paths>"   # or --path "<JMESPath>"
```

> Pick `--out-dir` outside any git working tree (e.g. `/tmp/...` on Unix, `%TEMP%/...` on Windows). Persisted responses may contain PII, pricing, or auth-sensitive data — do not commit them. Files are not auto-deleted; clean up when the task is done.

`run` writes the full response to a file and emits only a schema preview + file path. `read` projects specific fields, with `--limit/--offset` for slicing and `--format json|jsonl|csv|table` for output.

**When to prefer this pattern** — apply your judgment based on the response characteristics, e.g.:
- High field count per record, or fields you don't need
- Batch/paginated results (multiple items per call)
- Long-text fields (descriptions, reviews, HTML, time series)
- Output reused across later steps rather than consumed immediately

For small, single-use responses, calling the main script directly is fine.

⚠️ The preview is a truncated schema + sample, not the full data. Any field-level decision must read from the persisted file via `read`.
<!-- /LF_LARGE_RESPONSE_BLOCK -->

---
*For more high-quality, professional cross-border e-commerce skills, set [LinkFox Skills](https://skill.linkfox.com/).*
