IPP Registry Project

Tools for maintaining the IPP-based registries, schema, and strings files.

About the IPP Registry Project

The ippregistry project provides tools for maintaining the IANA IPP Registry, PWG Semantic Model schema, and sample IPP strings files. It is maintained by the PWG IPP workgroup. Three tools and a script are provided:

  • apply-pending.sh, a script that applies a list of plain text registrations;
  • register, a tool to apply plain text registration templates to the current IANA IPP XML registry file;
  • regtosm, a prototype tool for generating PWG Semantic Model XML schema; and
  • regtostrings, a tool for generating the ipp.strings file that provides localized strings for all registered attributes and values.

View Prototype IPP Registry View Prototype SM Print3D Schema



./register [-f] [-o newfile.xml] [-t "Standard Title"] [-x "Standard URL"] filename.xml [regtext.txt]


register imports plain-text registration templates from specifications or emails into the IANA IPP (XML) registry file. If no template file is specified, register reads from the standard input.


Force writing of new file.
-o newfile.xml
Specifies a new XML file to write to. By default register overwrites the original XML file.
-t "Standard Title"
Specifies the title of the standard or reference to the template.
-x "Standard URL"
Specifies the URL for the standard or reference. Strings of the form "rfcNNNN" are also supported for RFCs.


./regtosm [-n namespace-url] [-v version] filename.xml output-directory


regtosm generates a PWG Semantic Model XML Schema. It is currently used to produce the Prototype SM Print3D Schema.


-a attribute-list
Specifies a list of attributes to include in the service description. If not specified, all attributes are included.
-n namespace-url
Specifies the namespace URL to use in the generated schema. If not specified, a URL of the form "http://www.pwg.org/schemas/YYYY/MM/sm" is generated.
-s service-name
Specifies the service name to use in the generated schema. If not specified, a service called "Print" is generated.
-v version
Specifies the version number to use in the generated schema. If not specified, a version of the form "2.9nnnnn" is generated, where "nnnnn" is the number of days since 1970.


./regtostrings [ --po ] filename.xml >filename.strings


regtostrings generates the US English base strings file for all attributes, keywords, and enum values. It is used to generate the IPP strings file at https://ftp.pwg.org/pub/pwg/ipp/examples/ipp.strings.


Specifies that the GNU gettext message catalog format should be generated instead of the default Apple .strings format.

Copyright © 2018 by the IEEE-ISTO Printer Working Group.
Copyright © 2008-2017 by Michael R Sweet.

This software is provided under the terms of the Apache License, Version 2.0. A copy of this license can be found in the file LICENSE. Additional legal information is provided in the file NOTICE.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.