Property 4: Publisher

The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource
4. Publisher
Required Occurrences: 1-n

Definition: The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource. This property will be used to formulate the citation, so consider the prominence of the role.

Allowed values, examples, other constraints:

Examples: World Data Center for Climate; GeoForschungsZentrum Potsdam; University of Cape Town; African Institute for Mathematical Sciences

DOCiD™ Implementation:

Publishers are managed through the PublicationOrganization model with ROR integration for institutional identification:

PublicationOrganization Model - Publisher Information
class PublicationOrganization(db.Model):
    __tablename__ = 'publication_organizations'
    
    id = Column(Integer, primary_key=True, autoincrement=True)
    publication_id = Column(Integer, ForeignKey('publications.id'), nullable=False)
    
    # Organization Information
    name = Column(String(255), nullable=False)
    type = Column(String(255), nullable=False)  # University, Institute, Government
    other_name = Column(String(255))
    country = Column(String(255))
    
    # ROR Integration
    identifier = Column(String(500))      # ROR URL: https://ror.org/01ggx4157
    identifier_type = Column(String(50))  # 'ror', 'grid', 'isni'

Database Implementation

PublicationOrganization Model
Core Model Table: publication_organizations

Complete model structure for managing publisher information with international identifier support:

Complete PublicationOrganization Schema
class PublicationOrganization(db.Model):
    __tablename__ = 'publication_organizations'

    id = Column(Integer, primary_key=True, autoincrement=True)
    publication_id = Column(Integer, ForeignKey('publications.id'), nullable=False, index=True)
    
    # Organization Information
    name = Column(String(255), nullable=False)              # Official name
    type = Column(String(255), nullable=False)              # Organization type
    other_name = Column(String(255))                        # Alternative names
    country = Column(String(255))                           # Country location
    
    # International Identifiers  
    identifier = Column(String(500))       # Full resolvable URL (e.g., https://ror.org/02nr0ka47)
    identifier_type = Column(String(50))   # Type (e.g., 'ror', 'grid', 'isni')

    # Relationships
    publication = relationship('Publications', back_populates='publication_organizations')

Supported Publisher Identifiers:

  • ROR ID: https://ror.org/01ggx4157 (Research Organization Registry)
  • GRID ID: grid.7836.a (Global Research Identifier Database)
  • ISNI: https://isni.org/isni/0000000121678087 (International Standard Name Identifier)
  • Crossref Member ID: Crossref publisher identifiers
  • VIAF ID: http://viaf.org/viaf/123456789 (Virtual International Authority File)

African Research Publishers

Institution Country ROR ID Type Specialization
University of Cape Town South Africa 01ggx4157 University Comprehensive Research
University of Ghana Ghana 05591te55 University West African Studies
American University in Cairo Egypt 03gc78e51 University Middle Eastern Studies
University of the Witwatersrand South Africa 03rp50963 University Mining & Engineering
CSIR South Africa South Africa 0145zh013 Research Institute Applied Sciences
University of Ibadan Nigeria 01za5dv85 University Humanities & Social Sciences
Université Cheikh Anta Diop Senegal 03qx6w235 University Francophone Research
Kenya Education Network (KENET) Kenya 04b4z2r68 Network Organization Educational Technology

Publisher Type Classifications

Academic Institutions

  • University: Comprehensive higher education institutions
  • College: Specialized higher education institutions
  • Technical Institute: Vocational and technical training
  • Research University: Research-intensive universities
  • Community College: Local community education

Research Organizations

  • Government Research Institute: State research organizations
  • Private Research Institute: Independent research entities
  • International Organization: Multinational research bodies
  • Think Tank: Policy research organizations
  • Laboratory: Specialized research facilities

Government Entities

  • Ministry: Government ministerial departments
  • Agency: Government agencies and parastatals
  • Council: Research councils and boards
  • Commission: Regulatory and oversight bodies
  • Archive: National archives and libraries

International Organizations

  • NGO: Non-governmental organizations
  • Foundation: Research foundations
  • Network: Research networks and consortia
  • Alliance: Multi-institutional alliances
  • Union: Professional unions and societies

API Implementation

Publication Creation with Publisher Information
POST /api/v1/publications/publish
Authorization: Bearer {jwt_token}
Content-Type: application/json

{
    "document_title": "Climate Change Adaptation in Southern Africa",
    "document_description": "Comprehensive analysis of climate adaptation strategies...",
    "document_docid": "DOCID.UCT.2024.003",
    "resource_type_id": 1,
    "creators": [...],
    "organizations": [
        {
            "name": "University of Cape Town",
            "type": "University",
            "country": "South Africa",
            "identifier": "https://ror.org/01ggx4157",
            "identifier_type": "ror",
            "role": "Publisher"
        },
        {
            "name": "African Climate Research Initiative",
            "type": "Research Institute",
            "country": "South Africa",
            "identifier": "https://ror.org/example123",
            "identifier_type": "ror",
            "role": "Co-Publisher"
        }
    ]
}
ROR Integration - Organization Search
GET /api/v1/ror/search?query=university%20cape%20town
Authorization: Bearer {jwt_token}

Response:
{
    "status": "success",
    "data": {
        "organizations": [
            {
                "ror_id": "https://ror.org/01ggx4157",
                "name": "University of Cape Town",
                "country": "South Africa",
                "types": ["Education"],
                "aliases": ["UCT"],
                "external_ids": {
                    "GRID": {"all": "grid.7836.a"},
                    "ISNI": {"all": ["0000 0004 1937 1151"]},
                    "Wikidata": {"all": ["Q951305"]}
                },
                "addresses": [
                    {
                        "city": "Cape Town",
                        "country_geonames_id": 953987,
                        "geonames_city": {
                            "city": "Cape Town",
                            "geonames_admin1": {
                                "name": "Western Cape",
                                "ascii_name": "Western Cape"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Publisher Examples by Research Type

Research Type Primary Publisher Co-Publishers Example Publication
Traditional Medicine University of Cape Town South African Medical Research Council Medicinal Plants Database of Southern Africa
Agricultural Research University of Ghana CGIAR Research Centers Drought-Resistant Crop Varieties for West Africa
Environmental Studies American University in Cairo African Union Commission Nile Basin Climate Change Assessment
Cultural Heritage University of Ibadan UNESCO Digital Archive of Yoruba Oral Traditions
Mathematical Sciences African Institute for Mathematical Sciences International Mathematical Union Mathematical Modeling for African Development

Validation Rules

Publisher Validation Requirements

  • Required Field: At least one publisher organization must be specified
  • Name Validation: Organization name cannot be empty
  • ROR Verification: ROR IDs are validated against the ROR API
  • Type Classification: Publisher type must use controlled vocabulary
  • Country Codes: ISO 3166-1 alpha-2 country codes required
  • Identifier Format: URL format required for ROR, GRID, and ISNI identifiers
  • Duplicate Prevention: Same organization cannot be listed multiple times