
An EPUB language code should identify the language of the publication and be read back from the package document after export. In the current Rune Studio CLI test, ja and en succeeded. A request for fr was rejected during input validation, so no French EPUB was produced. Preserving that boundary is the central result of this article.
Answer: The verified accepted values in this run were ja and en
EPUB publications generally express their primary language with a BCP 47 language tag in dc:language. A tag can be valid in the standard while still being unavailable in a particular production tool. Standards-level validity and product-level input support are different questions.
The Japanese sample accepted ja, and the English sample accepted en. The fr request stopped with language-invalid. This article therefore reports what the current Rune Studio CLI accepted; it does not claim that EPUB as a format excludes French.
Sample: Put ja, en, and fr in one decision table
The starting values were short language-specific manuscripts and three requested codes.
| Sample | Intended body language | Requested value | Expected check |
|---|---|---|---|
| Japanese edition | Japanese | ja |
Read ja from the OPF |
| English edition | English | en |
Read en from the OPF |
| French attempt | French | fr |
Record whether input validation accepts it |
The Japanese and English editions used separate workspaces and output names. After the French request was rejected, it was not relabeled as ja or en merely to obtain an artifact. The recovery point is the production-language decision, not a cosmetic metadata substitution.
Procedure: Set, export, read back, and record rejection
A tool-independent language-code check sets the publication language, exports the EPUB, and reads dc:language from the OPF. If a tool rejects a value before export, record the error code, message, and recovery hint, as well as the absence of a successful artifact.
The article-specific Stage 4 run used 26 commands:
- Set
jafor the Japanese edition and export it separately. - Set
enfor the English edition and export it separately. - Inspect both OPF files and local validation results.
- Request
frand run input validation. - Preserve the rejection instead of converting it into a success.
If a successful artifact contains the wrong OPF language, return to the source-card setting. If validation rejects a requested code, return to the supported-language decision. Do not count an ungenerated EPUB as inspected.
Measured result: ja and en succeeded; fr stopped at validation
The article-specific overall status was partial because two cases succeeded and the third did not.
| Requested value | Export | OPF or validation result | Structural result |
|---|---|---|---|
ja |
Succeeded | dc:language=ja |
valid: true |
en |
Succeeded | dc:language=en |
valid: true |
fr |
Not produced | language-invalid |
valid: false |
For the rejected case, the recorded values were requested_language: fr, supported_by_cli: false, and issue code language-invalid. The message was “原稿の言語の指定が正しくありません: fr,” and the recovery hint was “ja か en を指定してください.” This was an input rejection, not a warning, so it cannot support a claim that a French EPUB was generated.
A separate common regression sample used two chapters, horizontal writing, and version 1.0. Its nine-command run produced spine count 6, one image, no missing resources, nav and NCX documents, and valid: true. That successful common sample does not override the article-specific fr failure.
Limits: Retailer detection and future language support were not tested
The result reflects a local CLI run dated August 31, 2026. Retailer language fields, automatic language detection, retailer review, and treatment by external reading systems were not checked. The run also cannot predict whether future product versions will support additional codes.
The rejection of fr is a current product-input boundary, not an EPUB-standard prohibition on French. Likewise, valid: true for ja and en does not guarantee acceptance by an external service.
What Rune Studio covers
Rune Studio’s documented EPUB wizard includes a publication-language setting and generates Japanese- or English-specific navigation, colophon, and date formatting. The public product documentation describes Japanese and English as the available choices. That is the Stage 3 product scope.
Stage 4 measured matching OPF values and successful local validation for ja and en, plus an explicit input rejection for fr. General EPUB requirements are described in W3C EPUB 3.3, and the product overview is available on the Rune Studio website.
Conclusion: Do not relabel an unsupported language to force completion
The Japanese and English samples produced matching dc:language values and returned valid: true. The fr request returned language-invalid and produced no successful artifact, so the overall status remains partial.
When a language code is rejected, check the product’s supported-language boundary and reconsider the production route. Substituting ja or en for a French publication would make the metadata inaccurate; it would not complete the original task.


