has Makefile
range: Port Makefile
type: ObjectProperty
comment: Links a port to its Makefile
IAO_0000115: Associates a port with its Makefile containing build instructions and configuration variables.
domain: Port

master sites
type: DatatypeProperty
domain: Port
comment: Primary download sites for distribution files
IAO_0000115: Specifies the primary download locations where the source distribution files can be obtained.
range: anyURI

maintainer
sub property of: maintainedBy
comment: The person or entity who maintains the port
IAO_0000115: The person or entity responsible for maintaining and updating this port.
domain: Port
range: Maintainer
type: ObjectProperty

WWW site
IAO_0000115: The official website URL of the upstream software project that this port packages.
range: anyURI
comment: The upstream website URL
type: DatatypeProperty
domain: Port
sub property of: homepage

Port Makefile
subclass of: Thing
comment: A Makefile containing port build instructions and metadata
IAO_0000115: A BSD make-compatible file that defines variables, dependencies, and build instructions for compiling and installing a port.
type: Class

OpenBSD Port
IAO_0000115: A software package in the OpenBSD ports collection that provides build instructions and metadata for compiling software from source on OpenBSD systems.
comment: A port in the OpenBSD ports system
subclass of: Port
type: Class

run depends
comment: Runtime dependency
type: ObjectProperty
sub property of: dependsOn
domain: Port
IAO_0000115: Specifies ports that must be installed for this port to function properly at runtime.
range: Port

has pkg-plist
type: ObjectProperty
domain: Port
IAO_0000115: Associates a port with its packing list file that specifies all files and directories to be installed.
range: Package Plist
comment: Links a port to its package plist

MD5 checksum
type: DatatypeProperty
IAO_0000115: The MD5 cryptographic hash of distribution files used to verify file integrity during download.
domain: Distinfo
comment: MD5 checksum of distribution files
range: string

fetch depends
type: ObjectProperty
domain: Port
range: Port
comment: Dependency needed for fetching sources
IAO_0000115: Specifies ports that provide tools or protocols needed to download the source distribution files.

package name prefix
comment: Prefix added to the package name
IAO_0000115: A string prepended to the package name to distinguish variants or provide additional identification.
range: string
type: DatatypeProperty
domain: Port

Port Flavor
IAO_0000115: A build-time variant of a BSD port that provides different features, dependencies, or configurations while sharing the same base source code.
type: Class
comment: A variant of a port with different build options or dependencies
subclass of: Thing

has distinfo
type: ObjectProperty
comment: Links a port to its distinfo file
IAO_0000115: Associates a port with its distinfo file containing checksums and metadata for distribution files.
domain: Port
range: Distinfo

BSD Package Ontology
abstract: The BSD extension models the FreeBSD, OpenBSD, and NetBSD ports systems. It captures ports tree structure, Makefile build configuration, distinfo checksums, build options, flavors, and categories. Port dependencies, master sites, and patch metadata are represented to support cross-BSD and BSD-to-Linux package comparisons.
created: 2025-09-05
creator: packagegraph.github.io
modified: 2026-04-21
version info: 0.7.0
label: BSD Ports Package Ontology
imports: core#
comment: Ontology for representing BSD ports system packages (FreeBSD, OpenBSD, NetBSD)
type: Ontology
version IRI: https://purl.org/packagegraph/ontology/bsdpkg/0.7.0
prior version: https://purl.org/packagegraph/ontology/bsdpkg/0.6.0
license: https://creativecommons.org/publicdomain/zero/1.0/
description: A comprehensive ontology for modeling BSD packages, ports systems, package databases, and BSD-specific metadata including origins, flavors, and port dependencies.

extract depends
domain: Port
comment: Dependency needed for extracting sources
type: ObjectProperty
IAO_0000115: Specifies ports that provide tools needed to extract or decompress the source distribution files.
range: Port

has option
range: Port Option
IAO_0000115: Associates a port with its configurable build options that can be enabled or disabled by users.
comment: Links a port to its build options
type: ObjectProperty
domain: Port

has flavor
comment: Links a port to its flavors
range: Port Flavor
IAO_0000115: Associates a port with its available build variants or flavors that provide different feature sets.
domain: Port
type: ObjectProperty

work source
type: DatatypeProperty
comment: The directory where sources are extracted and built
IAO_0000115: Specifies the subdirectory within the work directory where the source code is extracted and compilation occurs.
domain: Port
range: string

Patch
comment: A patch file applied during port building
subclass of: Thing
type: Class
IAO_0000115: A file containing modifications to the original source code that are applied during the build process to fix bugs, add features, or adapt the software for BSD systems.

FreeBSD Port
IAO_0000115: A software package in the FreeBSD ports collection that provides build instructions and metadata for compiling software from source on FreeBSD systems.
comment: A port in the FreeBSD ports system
type: Class
subclass of: Port

uses autotools
IAO_0000115: Indicates that this port uses GNU autotools (autoconf, automake, libtool) for its build system configuration.
comment: Whether the port uses GNU autotools
domain: Port
range: boolean
type: DatatypeProperty

checksum size
comment: Size of distribution files
type: DatatypeProperty
IAO_0000115: The size in bytes of distribution files, used to verify complete download and file integrity.
domain: Distinfo
range: long

master port
domain: Port
comment: The master port for slave ports
range: string
IAO_0000115: Identifies the master port that this slave port derives its configuration and build instructions from.
type: DatatypeProperty

Package Message
type: Class
IAO_0000115: A text file containing important information, configuration instructions, or warnings that are displayed to users during package installation or removal.
comment: File containing messages displayed during installation
subclass of: Thing

only for archs
domain: Port
IAO_0000115: Restricts this port to only be built on the specified architectures or platforms.
range: string
comment: Architectures this port can be built on
type: DatatypeProperty

port epoch
IAO_0000115: An integer used to override normal version comparison when the version numbering scheme changes significantly.
range: int
type: DatatypeProperty
comment: The port epoch for version ordering
domain: Version
sub property of: epoch

distribution name
range: string
type: DatatypeProperty
IAO_0000115: The base name of the main source distribution archive, typically without file extension.
comment: The base name of the distribution file
domain: Port

not for archs
comment: Architectures this port cannot be built on
IAO_0000115: Lists architectures or platforms where this port cannot be built due to incompatibilities or limitations.
domain: Port
range: string
type: DatatypeProperty

uses libc
comment: The C library dependency
domain: Port
IAO_0000115: Specifies the C library implementation or version required by this port.
range: string
type: DatatypeProperty

Port Skeleton
comment: The complete set of files that define a port
subclass of: Thing
IAO_0000115: The complete directory structure and files that define a BSD port, including Makefile, patches, description files, and other metadata.
type: Class

Port
type: Class
subclass of: SourcePackage
comment: A port in the BSD ports system
IAO_0000115: A collection of files and metadata that provides instructions for downloading, compiling, and installing software from source code on BSD systems.

port revision
domain: Version
IAO_0000115: An integer incremented when the port is updated without changing the upstream software version.
range: int
comment: The port revision number
sub property of: revision
type: DatatypeProperty

has pkg-descr
type: ObjectProperty
range: Package Description
IAO_0000115: Associates a port with its detailed description file explaining the software's purpose and features.
domain: Port
comment: Links a port to its package description

in category
range: Port Category
comment: The categories this port belongs to
domain: Port
IAO_0000115: Lists the functional categories that classify this port, with the first category determining its location in the ports tree.
type: ObjectProperty

build depends
type: ObjectProperty
range: Port
comment: Build-time dependency
domain: Port
IAO_0000115: Specifies ports that must be installed to provide tools, libraries, or other resources needed during the build process.
sub property of: buildDependsOn

net
comment: Networking software
type: Port Category

Package Plist
subclass of: Thing
type: Class
comment: Packing list containing files installed by the port
IAO_0000115: A manifest file listing all files, directories, and other items that will be installed by the port, used for package creation and removal.

port name
domain: Port
IAO_0000115: The unique name identifier of the port within its category in the ports tree.
range: string
type: DatatypeProperty
comment: The name of the port

restricted
comment: Reason why the port has distribution restrictions
type: DatatypeProperty
IAO_0000115: Explains why this port has restrictions on redistribution, typically due to licensing constraints.
domain: Port
range: string

uses perl
IAO_0000115: Specifies the Perl interpreter version or modules required by this port for building or runtime.
type: DatatypeProperty
domain: Port
range: string
comment: The Perl dependency requirement

Ports Tree
type: Class
comment: A collection of ports organized in a directory structure
subclass of: Repository
IAO_0000115: A hierarchical directory structure containing all available ports organized by category, providing the complete collection of software that can be built from source.

SHA256 checksum
range: string
domain: Distinfo
comment: SHA256 checksum of distribution files
IAO_0000115: The SHA256 cryptographic hash of distribution files used to verify file integrity during download.
type: DatatypeProperty

security
type: Port Category
comment: Security tools and libraries

library depends
IAO_0000115: Specifies ports that provide shared libraries required by this port at both build and runtime.
type: ObjectProperty
range: Port
domain: Port
comment: Shared library dependency

forbidden
type: DatatypeProperty
domain: Port
comment: Reason why the port is forbidden
range: string
IAO_0000115: Explains why this port is forbidden from being built or distributed, typically due to legal or security concerns.

package name suffix
range: string
type: DatatypeProperty
comment: Suffix added to the package name
IAO_0000115: A string appended to the package name to distinguish variants or provide additional identification.
domain: Port

has patch
IAO_0000115: Associates a port with patch files that modify the original source code during the build process.
type: ObjectProperty
comment: Links a port to its patches
domain: Port
range: Patch

uses python
range: string
type: DatatypeProperty
domain: Port
IAO_0000115: Specifies the Python interpreter version or modules required by this port for building or runtime.
comment: The Python dependency requirement

has pkg-message
range: Package Message
comment: Links a port to its package message
IAO_0000115: Associates a port with its message file containing important information displayed during installation.
type: ObjectProperty
domain: Port

no arch
range: boolean
IAO_0000115: Indicates that this port produces architecture-independent packages that can be used on any supported platform.
comment: Whether the port is architecture-independent
type: DatatypeProperty
domain: Port

patch depends
type: ObjectProperty
domain: Port
comment: Dependency needed for patching
range: Port
IAO_0000115: Specifies ports that provide tools needed to apply patches to the source code during the build process.

Port Option
subclass of: Thing
comment: A build option that can be enabled or disabled for a port
IAO_0000115: A configurable build-time option that allows users to enable or disable specific features, dependencies, or functionality when building a BSD port.
type: Class

comment
type: DatatypeProperty
IAO_0000115: A brief one-line description of the port's purpose and functionality, displayed in package listings and searches.
domain: Port
sub property of: description
comment: One-line description of the port
range: string

Package Description
subclass of: Thing
type: Class
comment: File containing detailed description of the port
IAO_0000115: A text file containing a detailed description of the port's functionality, purpose, and features, used for documentation and package management.

extract suffix
IAO_0000115: The file extension of the main distribution archive, used to determine the appropriate extraction method.
type: DatatypeProperty
domain: Port
range: string
comment: The file extension for the main distribution file

Port Category
IAO_0000115: A hierarchical classification system for organizing BSD ports by functionality or purpose, such as www for web-related software or devel for development tools.
subclass of: Thing
type: Class
comment: A category in the ports tree (e.g., www, devel, games)

uses gmake
type: DatatypeProperty
range: boolean
IAO_0000115: Indicates that this port requires GNU make instead of the system's default make implementation.
comment: Whether the port requires GNU make
domain: Port

distribution files
type: DatatypeProperty
comment: The distribution files to download
IAO_0000115: Specifies the names of source archive files that need to be downloaded to build this port.
domain: Port
range: string

www
comment: World Wide Web related ports
type: Port Category

Distinfo
subclass of: Thing
IAO_0000115: A file containing cryptographic checksums and size information for distribution files, used to verify the integrity of downloaded source archives.
type: Class
comment: File containing checksums and metadata for distribution files

no package
domain: Port
IAO_0000115: Explains why binary packages are not created for this port, requiring users to build from source.
range: string
comment: Reason why binary packages are not built
type: DatatypeProperty

port version
type: DatatypeProperty
sub property of: versionString
comment: The version of the port
domain: Version
IAO_0000115: The version string of the upstream software that this port packages.
range: string

textproc
type: Port Category
comment: Text processing utilities

games
comment: Games and entertainment software
type: Port Category

sysutils
type: Port Category
comment: System utilities

NetBSD Port
type: Class
comment: A port in the NetBSD pkgsrc system
IAO_0000115: A software package in the NetBSD pkgsrc collection that provides build instructions and metadata for compiling software from source on NetBSD and other supported systems.
subclass of: Port

broken on
type: DatatypeProperty
IAO_0000115: Specifies platforms, architectures, or system versions where this port is known to have build or runtime issues.
domain: Port
comment: Platforms where this port is known to be broken
range: string

x11
type: Port Category
comment: X Window System related software

devel
comment: Development tools and libraries
type: Port Category