0
Answered

View more comic metadata

tombs 4 years ago updated by Tom 4 years ago 3

Is it possible to view additional metadata from comics? I add some extra notes that I would like to view when selecting a comic from my library.

Under review

Ubooquity reads metadata stored in the ComicRack format and displays some of them.

Which ones of the missing fields would you want Ubooquity to display ?


Here is the full schema of the ComicRack metadata format:


<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="ComicInfo" nillable="true" type="ComicInfo" />
  <xs:complexType name="ComicInfo">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Title" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Series" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Number" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="-1" name="Count" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="-1" name="Volume" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="AlternateSeries" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="AlternateNumber" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="-1" name="AlternateCount" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Summary" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Notes" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="-1" name="Year" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="-1" name="Month" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Writer" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Penciller" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Inker" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Colorist" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Letterer" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="CoverArtist" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Editor" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Publisher" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Imprint" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Genre" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Web" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="0" name="PageCount" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="LanguageISO" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="" name="Format" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="Unknown" name="BlackAndWhite" type="YesNo" />
      <xs:element minOccurs="0" maxOccurs="1" default="Unknown" name="Manga" type="YesNo" />
      <xs:element minOccurs="0" maxOccurs="1" name="Pages" type="ArrayOfComicPageInfo" />
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="YesNo">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Unknown" />
      <xs:enumeration value="No" />
      <xs:enumeration value="Yes" />
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ArrayOfComicPageInfo">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Page" nillable="true" type="ComicPageInfo" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ComicPageInfo">
    <xs:attribute name="Image" type="xs:int" use="required" />
    <xs:attribute default="Story" name="Type" type="ComicPageType" />
    <xs:attribute default="false" name="DoublePage" type="xs:boolean" />
    <xs:attribute default="0" name="ImageSize" type="xs:long" />
    <xs:attribute default="" name="Key" type="xs:string" />
    <xs:attribute default="-1" name="ImageWidth" type="xs:int" />
    <xs:attribute default="-1" name="ImageHeight" type="xs:int" />
  </xs:complexType>
  <xs:simpleType name="ComicPageType">
    <xs:list>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="FrontCover" />
          <xs:enumeration value="InnerCover" />
          <xs:enumeration value="Roundup" />
          <xs:enumeration value="Story" />
          <xs:enumeration value="Advertisment" />
          <xs:enumeration value="Editorial" />
          <xs:enumeration value="Letters" />
          <xs:enumeration value="Preview" />
          <xs:enumeration value="BackCover" />
          <xs:enumeration value="Other" />
          <xs:enumeration value="Deleted" />
        </xs:restriction>
      </xs:simpleType>
    </xs:list>
  </xs:simpleType>
</xs:schema>

Personally I would like the ability to choose what metadata is displayed. It would also be nice to not have to modify/convert my comics for metadata. Perhaps an option to read metadata from a separate file.

Answered

The ComicRack format is the only one that is commonly used for comics.

Using an external file would amount to create a format specific to Ubooquity. I prefer to stick to standards (or de facto standards) when they exist.


As for the options to choose which fields to display, it'll come "naturally" when Ubooquity starts using templates for all the pages generation.

Don't know if and when I'll do it though.