Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relax the XSD for package format 1, 2, and 3. #400

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 13 additions & 4 deletions xsd/package_format1.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -30,17 +30,26 @@
<xs:element name="name" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
The package name must start with a letter and contain only
lowercase alphabetic, numeric, or underscore characters.
The package name should be unique within the ROS community.
It may differ from the folder name into which it is checked out,
but that is not recommended.
It must start with a lower-case letter and consist of only
lower-case letters, numbers and underscores.
It must not have two consecutive underscores.

The following recommended exemptions apply, which are optional
for implementations:
- Dashes may be permitted in package names. This is to support
maintaining a consistent dependency name when transitioning back
and forth between a system dependency and in-workspace package,
since many rosdep keys contain dashes (inherited from the
Debian/Ubuntu name).
- In support of some legacy packages, capital letters may also be
accepted in the package name, with a validation warning.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:pattern value="[a-z](_?[a-z0-9]+)*"/>
<xs:pattern value="[A-Za-z]([_-]?[0-9A-Za-z]+)*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Expand Down
17 changes: 13 additions & 4 deletions xsd/package_format2.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -30,17 +30,26 @@
<xs:element name="name" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
The package name must start with a letter and contain only
lowercase alphabetic, numeric, or underscore characters.
The package name should be unique within the ROS community.
It may differ from the folder name into which it is checked out,
but that is not recommended.
It must start with a lower-case letter and consist of only
lower-case letters, numbers and underscores.
It must not have two consecutive underscores.

The following recommended exemptions apply, which are optional
for implementations:
- Dashes may be permitted in package names. This is to support
maintaining a consistent dependency name when transitioning back
and forth between a system dependency and in-workspace package,
since many rosdep keys contain dashes (inherited from the
Debian/Ubuntu name).
- In support of some legacy packages, capital letters may also be
accepted in the package name, with a validation warning.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:pattern value="[a-z](_?[a-z0-9]+)*"/>
<xs:pattern value="[A-Za-z]([_-]?[0-9A-Za-z]+)*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Expand Down
17 changes: 13 additions & 4 deletions xsd/package_format3.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -67,17 +67,26 @@
<xs:element name="name" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
The package name must start with a letter and contain only
lowercase alphabetic, numeric, or underscore characters.
The package name should be unique within the ROS community.
It may differ from the folder name into which it is checked out,
but that is not recommended.
It must start with a lower-case letter and consist of only
lower-case letters, numbers and underscores.
It must not have two consecutive underscores.

The following recommended exemptions apply, which are optional
for implementations:
- Dashes may be permitted in package names. This is to support
maintaining a consistent dependency name when transitioning back
and forth between a system dependency and in-workspace package,
since many rosdep keys contain dashes (inherited from the
Debian/Ubuntu name).
- In support of some legacy packages, capital letters may also be
accepted in the package name, with a validation warning.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:pattern value="[a-z](_?[a-z0-9]+)*"/>
<xs:pattern value="[a-zA-Z]([_-]?[0-9a-zA-Z]+)*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Expand Down
Loading