Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
Trac
Trac
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar

GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

  • Legacy
  • TracTrac
  • Issues
  • #2220

Closed (moved)
Open
Opened Nov 27, 2010 by cypherpunks@cypherpunks

RELAX NG grammar for HTTPS Everywhere rulesets

Attached is a RELAX NG grammar for HTTPS Everywhere rulesets, in RELAX NG compact syntax (see http://www.relaxng.org/). I wrote it based on the documentation at https://www.eff.org/https-everywhere/rulesets and by looking at the existing rules (the rulesets web page isn't entirely up-to-date with respect to the syntax). You may find it useful for editing ruleset files in a RELAX NG-aware editor like Emacs' nxml-mode, and for validating rulesets with a tool like jing (https://code.google.com/p/jing-trang/).

I tried to use my grammar to validate all the rulesets in the git repository using jing, this gave me a few errors which I suspect are faults in those ruleset files rather than in my grammar:

$ find -name *.xml -print0 | xargs -0 jing -c https-everywhere.rnc

pending-rules/IsoHunt.xml:5:76: error: value of attribute "to" is invalid; must be a string matching the regular expression "https://." pending-rules/Three.xml:7:90: error: value of attribute "to" is invalid; must be a string matching the regular expression "https://."

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: legacy/trac#2220