Skip to content

Update README with information on how it works - #7

Merged
EzraBrooks merged 1 commit into
mainfrom
document-format-in-readme
Oct 29, 2025
Merged

Update README with information on how it works#7
EzraBrooks merged 1 commit into
mainfrom
document-format-in-readme

Conversation

@EzraBrooks

Copy link
Copy Markdown
Owner

Closes #5.

@traversaro is this the sort of information you were looking for?

@traversaro

Copy link
Copy Markdown

Closes #5.

@traversaro is this the sort of information you were looking for?

Yes! I suggest something more but more and less it is what I needed.

@EzraBrooks

Copy link
Copy Markdown
Owner Author

I have some ideas cooking along the lines of formal definition of an interface (I saw your fingerprints on the same over in ros/urdfdom#200 and related issues), but I'm trying to clean up the upstream schema before making one that derives from it. (ros/urdfdom#227, ros/urdfdom#228, ros/urdfdom#229)

@EzraBrooks
EzraBrooks merged commit 1b3dafb into main Oct 29, 2025
3 checks passed
@EzraBrooks
EzraBrooks deleted the document-format-in-readme branch October 29, 2025 16:19
@traversaro

Copy link
Copy Markdown

Yes, I think what would also useful at urdf level is the formalization of of a uri schema for relative paths w.r.t. to the urdf file location. That is already quite useful and used by many existing URDF parser, but it is not formalized now, and I do not if the official ROS tooling actually process it.

fyi @saikishor

@traversaro traversaro left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apparently I added a suggestion but it remained in pending mode (that it was the "more" I was suggesting in my comment, sorry for the confusion. @EzraBrooks

Comment thread README.md

## How does it work?

URDFZ treats your URDF as an archive manifest for your URDFZ archive. It looks up all the URIs listed in the URDF, resolves them to absolute paths, and copies them into the archive. It then creates a copy of your URDF that has its URIs rewritten to a `urdfz://` scheme that points to the asset's path within the archive, and places that modified URDF at the root of the archive.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
URDFZ treats your URDF as an archive manifest for your URDFZ archive. It looks up all the URIs listed in the URDF, resolves them to absolute paths, and copies them into the archive. It then creates a copy of your URDF that has its URIs rewritten to a `urdfz://` scheme that points to the asset's path within the archive, and places that modified URDF at the root of the archive.
URDFZ treats your URDF as an archive manifest for your URDFZ archive. It looks up all the URIs listed in the URDF, resolves them to absolute paths, and copies them into the archive. It then creates a copy of your URDF that has its URIs rewritten to a `urdfz://` scheme that points to the asset's path within the archive, and places that modified URDF at the root of the archive.
Once the URDFZ is extracted, the `urdfz://` URIs are replaced with a `file://` containing the absolute path to the extracted resource file.

I am not sure if what I added is correct, but it would be great to describe what happens at extraction phase.

@saikishor

Copy link
Copy Markdown

Yes, I think what would also useful at urdf level is the formalization of of a uri schema for relative paths w.r.t. to the urdf file location. That is already quite useful and used by many existing URDF parser, but it is not formalized now, and I do not if the official ROS tooling actually process it.

fyi @saikishor

Good to know. We should definitely tackle this ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document the format in the README

3 participants