mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
SISR: top categories do not need the Cat_field field.
This commit is contained in:
@@ -68,14 +68,11 @@ prJSGF srg@(SRG{grammarName=name,startCat=start,origStartCat=origStart,rules=rs}
|
||||
finalTag = tag sisr (profileFinalSISR n)
|
||||
|
||||
topCatRules = [rule True (catFormId tc) (map (it tc) cs) | (tc,cs) <- srgTopCats srg]
|
||||
where it i c = prCat c <+> tag sisr (topCatSISR (catFieldId i) c)
|
||||
where it i c = prCat c <+> tag sisr (topCatSISR c)
|
||||
|
||||
catFormId :: String -> String
|
||||
catFormId = (++ "_cat")
|
||||
|
||||
catFieldId :: String -> String
|
||||
catFieldId = (++ "_field")
|
||||
|
||||
prCat :: SRGCat -> Doc
|
||||
prCat c = char '<' <> text c <> char '>'
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ prSrgsXml sisr srg@(SRG{grammarName=name,startCat=start,
|
||||
-- externally visible rules for each of the GF categories
|
||||
topCatRules = [topRule tc [oneOf (map (it tc) cs)] | (tc,cs) <- srgTopCats srg]
|
||||
where it i c = Tag "item" [] [Tag "ruleref" [("uri","#" ++ c)] [],
|
||||
tag sisr (topCatSISR (catFieldId i) c)]
|
||||
tag sisr (topCatSISR c)]
|
||||
topRule i is = Tag "rule" [("id",catFormId i),("scope","public")] is
|
||||
|
||||
rule :: String -> [XML] -> XML
|
||||
@@ -111,9 +111,6 @@ tag (Just fmt) t = case t fmt of
|
||||
catFormId :: String -> String
|
||||
catFormId = (++ "_cat")
|
||||
|
||||
catFieldId :: String -> String
|
||||
catFieldId = (++ "_field")
|
||||
|
||||
|
||||
showToken :: Token -> String
|
||||
showToken t = t
|
||||
|
||||
@@ -38,8 +38,8 @@ type SISRTag = [JS.DeclOrExpr]
|
||||
prSISR :: SISRTag -> String
|
||||
prSISR = JS.printTree
|
||||
|
||||
topCatSISR :: String -> String -> SISRFormat -> SISRTag
|
||||
topCatSISR i c fmt = map JS.DExpr [field (fmtOut fmt) i `ass` fmtRef fmt c]
|
||||
topCatSISR :: String -> SISRFormat -> SISRTag
|
||||
topCatSISR c fmt = map JS.DExpr [fmtOut fmt `ass` fmtRef fmt c]
|
||||
|
||||
profileInitSISR :: CFTerm -> SISRFormat -> SISRTag
|
||||
profileInitSISR t fmt
|
||||
|
||||
Reference in New Issue
Block a user