Skip to content
This repository has been archived by the owner on May 17, 2023. It is now read-only.

Fix schema issue with class-or-set-operator-nested #4

Merged
merged 1 commit into from
May 2, 2016
Merged
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
19 changes: 13 additions & 6 deletions lgr-1.0.rnc
Original file line number Diff line number Diff line change
Expand Up @@ -142,15 +142,18 @@ variant = element var {
## (or set-operator like "union") defined elsewhere.
## If used as a matcher (appearing under a "rule" element),
## the "count" attribute may be present.
class-invocation = element class {
class-invocation = element class { class-invocation-content }

class-invocation-content =
attribute by-ref { class-ref },
attribute count { count-pattern }?,
attribute comment { text }?
}

## defines a new class (set of code points) using Unicode property
## or code points of the same tag value or code point literals
class-declaration = element class {
class-declaration = element class { class-declaration-content }

class-declaration-content =
# "name" attribute MUST be present if this is a "top-level"
# class declaration, i.e. appearing directly under the "rules"
# element. Otherwise, it MUST be absent.
Expand All @@ -170,12 +173,16 @@ class-declaration = element class {
# e.g. "0061 0062-0063"
| code-point-set-shorthand
)
}


class-invocation-or-declaration = element class {
class-invocation-content | class-declaration-content
}

class-or-set-operator-nested =
class-invocation | class-declaration | set-operator
class-invocation-or-declaration | set-operator

class-or-set-operator-declaration =
class-or-set-operator-declaration =
# a "class" element or set operator (effectively defining a class)
# directly in the "rules" element.
class-declaration | set-operator
Expand Down