Skip to main content

No project description provided

Project description

3DOCX.org logo

The Open Class 3D Exchange (OCX) Schema

Introduction

This is the official GitHub repository for the Open Class 3D Exchange (OCX) schema (working draft version) owned and managed by the OCX Consortium.
The latest published version of the OCX schema is available from the consortium's website.

Changelog

Historic changes (pre 2.8.6)

How to contribute

The schema file is maintained using an XML editor like Altova XMLSpy.

  1. Installation: Simply download the schema files from the repository or clone it using git.
  2. Create an Issue for the proposed schema change. Follow the recipe on the Wiki on how to register an issue.
  3. Then create a branch from the issue, check out the branch and implement the proposed changes.
  4. When the implementation is completed, create a pull request.
  5. The pull request will have to be approved by the OCXStandard maintainer before it can be included in the working draft.

Schema versioning

The OCX schema is following the Python PEP 440 versioning recommendations.

Following PEP 440, the canonical public version identifiers MUST comply with the following scheme:

[N!]N(.N)*[{a|b|rc}N][.postN][.devN] see the PEP 440 for a detailed explanation.

tbump versioning tool

The Python tbump tool is used to automate and bump schema versions. tbump also provides the possibility for pre- and post-commit actions. The project config file pyproject.toml contains the tbump settings.

Usage

Assume that the current schema version is 2.8.6. To bump the schema version to the pre-release alpha version, the following command can be issued:


> tbump 3.0.0-alpha
:: Bumping from 2.8.6 to 3.0.0-alpha
=> Would update current version in pyproject.toml
=> Would patch these files
- pyproject.toml:3 version = "2.8.6"
+ pyproject.toml:3 version = "3.0.0-alpha"
- pyproject.toml:34 current = "2.8.6"
+ pyproject.toml:34 current = "3.0.0-alpha"
- OCX_Schema.xsd:103 
+ OCX_Schema.xsd:103 
- OCX_Schema.xsd:12 xmlns:ocx="https://3docx.org/fileadmin//ocx_schema//V286//OCX_Schema.xsd"
+ OCX_Schema.xsd:12 xmlns:ocx="https://3docx.org/fileadmin//ocx_schema//V300alpha//OCX_Schema.xsd"
- OCX_Schema.xsd:14 targetNamespace="https://3docx.org/fileadmin//ocx_schema//V286//OCX_Schema.xsd"
+ OCX_Schema.xsd:14 targetNamespace="https://3docx.org/fileadmin//ocx_schema//V300alpha//OCX_Schema.xsd"
=> Would run these hooks before commit
* (1/4) $ python xsdata_package.py 3.0.0-alpha
* (2/4) $ xsdata generate OCX_Schema.xsd
* (3/4) $ gid add ./ocx_*
* (4/4) $ python insert_version.py 3.0.0-alpha
=> Would run these git commands
$ git add --update
$ git commit --message Bump to 3.0.0-alpha
$ git tag --annotate --message v3.0.0-alpha v3.0.0-alpha
$ git push --atomic origin working_draft v3.0.0-alpha
:: Looking good? (y/N)
>

Schema databinding

See DATABINDING.md

OCX Public License

The OCX standard is governed by the 3Docx.org (https://3Docx.org) Consortium Members and published under the Apache 2.0 Public License conditions (the License).

You may obtain a copy of the License at:

LICENSE-2.0

Unless required by applicable law or agreed to in writing, the 3Docx standard and software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. The OCX Consortium is not liable to any use whatsoever of the distributed standard or software based on the standard.

See the License for the specific language governing permissions and limitations under the License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ocx-3.1.0rc1.tar.gz (275.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ocx-3.1.0rc1-py3-none-any.whl (281.8 kB view details)

Uploaded Python 3

File details

Details for the file ocx-3.1.0rc1.tar.gz.

File metadata

  • Download URL: ocx-3.1.0rc1.tar.gz
  • Upload date:
  • Size: 275.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for ocx-3.1.0rc1.tar.gz
Algorithm Hash digest
SHA256 1b0d7717e6c5dcc33fde1f2fb41ef50c8c674c84a7b406c7d6afe1b4a2183aa5
MD5 58cd731e073c7182be0d8d3f4b02f5fe
BLAKE2b-256 3c077cf9491c7202a7619a0398970ebcd7184bf17a98c2faab43b9187a41d298

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocx-3.1.0rc1.tar.gz:

Publisher: python-publish.yml on OCXStandard/OCX_Schema

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ocx-3.1.0rc1-py3-none-any.whl.

File metadata

  • Download URL: ocx-3.1.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 281.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for ocx-3.1.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 1fdeb65bec2d393688f77cfa07316e3346d68e8e7aaba24f5afaa6d554159d94
MD5 8ddc108611678a8bed5a9f4e638ed076
BLAKE2b-256 88b009e9aa5420617aee2a48a5deb0e6ae910273a4a74e026cb70cdb46eaf06c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocx-3.1.0rc1-py3-none-any.whl:

Publisher: python-publish.yml on OCXStandard/OCX_Schema

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page