Skip to content

Commit

Permalink
nor-eng depends on nno/nob for dix, prob, xsl
Browse files Browse the repository at this point in the history
  • Loading branch information
unhammer committed Oct 15, 2013
1 parent 9265121 commit 16f4e18
Show file tree
Hide file tree
Showing 6 changed files with 459 additions and 5 deletions.
4 changes: 4 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,13 @@
/Makefile.am -text
/NEWS -text
/README -text
/alt.xsl -text
/apertium-nob.nob.dix -text
/apertium-nob.nob.rlx -text
/apertium-nob.nob.tsx -text
/apertium-nob.pc.in -text
/autogen.sh -text
/configure.ac -text
/modes.xml -text
/nob.prob -text svneol=unset#unset
/rem-compounds.xsl -text
16 changes: 11 additions & 5 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,15 @@ BASENAME=apertium-$(LANG1)

TARGETS_COMMON = $(LANG1).automorf.bin $(LANG1).autogen.bin \
$(LANG1).automorf.att.gz $(LANG1).autogen.att.gz \
$(LANG1).prob \
$(LANG1).rlx.bin

###############################################################################
## Norwegian Bokmål transducer
###############################################################################

# TODO: alt.xsl, rem-compounds.xsl

$(LANG1).autogen.bin: $(BASENAME).$(LANG1).dix
lt-comp rl $< $@

Expand All @@ -39,13 +42,12 @@ $(LANG1).rlx.bin: $(BASENAME).$(LANG1).rlx
###############################################################################
EXTRA_DIST=$(BASENAME).$(LANG1).dix \
$(BASENAME).$(LANG1).rlx \
$(LANG1).prob \
$(BASENAME).$(LANG1).tsx \
alt.xsl \
rem-compounds.xsl \
modes.xml

# TODO:
# $(LANG1).prob
# $(BASENAME).$(LANG1).tsx
# alt.xsl rem-compounds.xsl lexchoicebil.xsl ?

###############################################################################
## Installation stuff
###############################################################################
Expand Down Expand Up @@ -73,6 +75,10 @@ install-data-local:
test -d $(DESTDIR)$(apertium_nob_srcdir) || mkdir -p $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) $(BASENAME).$(LANG1).dix $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) $(BASENAME).$(LANG1).rlx $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) $(BASENAME).$(LANG1).tsx $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) alt.xsl $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) rem-compounds.xsl $(DESTDIR)$(apertium_nob_srcdir)
$(INSTALL_DATA) $(LANG1).prob $(DESTDIR)$(apertium_nob_srcdir)


CLEANFILES = $(TARGETS_COMMON)
Expand Down
98 changes: 98 additions & 0 deletions alt.xsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- nxml -*- -->
<!--
Copyright (C) 2005 Universitat d'Alacant / Universidad de Alicante
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
-->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:param name="alt"/>

<xsl:template name="replaceString">
<xsl:param name="haystack"/>
<xsl:param name="needle"/>
<xsl:param name="replacement"/>
<xsl:choose>
<xsl:when test="contains($haystack, $needle)">
<xsl:value-of select="substring-before($haystack, $needle)"/>
<xsl:value-of select="$replacement"/>
<xsl:call-template name="replaceString">
<xsl:with-param name="haystack"
select="substring-after($haystack, $needle)"/>
<xsl:with-param name="needle" select="$needle"/>
<xsl:with-param name="replacement" select="$replacement"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$haystack"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<xsl:template match="/">
<xsl:value-of select="string('&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xA;')"/>
<xsl:apply-templates select="*|text()"/>
</xsl:template>

<xsl:template match="*">
<xsl:if test="not(count(./@alt)=1) or ./@alt=$alt">
<xsl:if test="not(local-name(.)=string('group'))">
<xsl:value-of select="string('&lt;')"/>
<xsl:value-of select="local-name(.)"/>
<xsl:for-each select="./@*">
<xsl:if test="not(local-name(.)=string('alt'))">
<xsl:value-of select="string(' ')"/>
<xsl:value-of select="local-name(.)"/>
<xsl:value-of select="string('=&quot;')"/>
<xsl:call-template name="replaceString">
<xsl:with-param name="haystack" select="."/>
<xsl:with-param name="needle" select="string('&amp;')"/>
<xsl:with-param name="replacement" select="string('&amp;amp;')"/>
</xsl:call-template>
<xsl:value-of select="string('&quot;')"/>
</xsl:if>
</xsl:for-each>
</xsl:if>
<xsl:choose>
<xsl:when test="count(text()[normalize-space(.)] | *)=0">
<xsl:if test="not(local-name(.)=string('group'))">
<xsl:value-of select="string('/&gt;')"/>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:if test="not(local-name(.)=string('group'))">
<xsl:value-of select="string('&gt;')"/>
</xsl:if>
<xsl:apply-templates/>
<xsl:if test="not(local-name(.)=string('group'))">
<xsl:value-of select="string('&lt;/')"/>
<xsl:value-of select="local-name(.)"/>
<xsl:value-of select="string('&gt;')"/>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:template>

<xsl:template match="text()">
<xsl:call-template name="replaceString">
<xsl:with-param name="haystack" select="."/>
<xsl:with-param name="needle" select="string('&amp;')"/>
<xsl:with-param name="replacement" select="string('&amp;amp;')"/>
</xsl:call-template>
</xsl:template>

</xsl:stylesheet>
236 changes: 236 additions & 0 deletions apertium-nob.nob.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,236 @@
<?xml version="1.0" encoding="UTF-8"?>
<tagger name="Norwegian Bokmål">
<tagset>
<def-label name="NOMF">
<tags-item tags="n.f.*"/>
</def-label>
<def-label name="NOMM">
<tags-item tags="n.m.*"/>
</def-label>
<def-label name="NOMNT">
<tags-item tags="n.nt.*"/>
</def-label>
<def-label name="NOMMF">
<tags-item tags="n.mf.*"/>
</def-label>
<def-label name="NOMACR">
<tags-item tags="n.acr"/>
</def-label>

<def-label name="PROPN">
<tags-item tags="np"/>
<tags-item tags="np.*"/>
</def-label>

<def-label name="NUM">
<tags-item tags="num"/>
<tags-item tags="num.*"/>
</def-label>

<def-label name="DET">
<tags-item tags="det.*"/>
</def-label>

<def-label name="DETDEM">
<tags-item tags="det.dem.*"/>
</def-label>

<def-label name="PRNPERS">
<tags-item tags="prn.p1.*"/>
<tags-item tags="prn.p2.*"/>
<tags-item tags="prn.p3.*"/>
<tags-item tags="prn.sg"/>
</def-label>

<def-label name="PRNITG">
<tags-item tags="prn.itg"/>
</def-label>

<def-label name="PRNREFRES">
<tags-item tags="prn.ref.*"/>
<tags-item tags="prn.res.*"/>
</def-label>

<def-label name="PRNINGENNOE">
<tags-item tags="prn.nt.*"/>
<tags-item tags="prn.f.*"/>
<tags-item tags="prn.m.*"/>
<tags-item tags="prn.pl"/>
<tags-item tags="prn.neg.*"/>
</def-label>

<def-label name="ADJ">
<tags-item tags="adj.*"/>
</def-label>

<def-label name="ADV">
<tags-item tags="adv"/>
</def-label>

<def-label name="IJ">
<tags-item tags="ij"/>
</def-label>

<def-label name="PREP">
<tags-item tags="pr"/>
</def-label>

<def-label name="CNJSUB">
<tags-item tags="cnjsub"/>
</def-label>

<def-label name="CNJCOO">
<tags-item tags="cnjcoo"/>
</def-label>

<def-label name="CNJCOOCLB">
<tags-item tags="cnjcoo.clb"/>
</def-label>

<def-label name="VBSER">
<tags-item tags="vbser.*"/>
</def-label>

<def-label name="VBLEX">
<tags-item tags="vblex"/> <!-- entries like this are probably broken -->
<tags-item tags="vblex.*"/>
</def-label>

<def-label name="VBLEXINF">
<tags-item tags="vblex.inf"/>
</def-label>

<def-label name="SENTCLB">
<tags-item tags="sent.*"/>
</def-label>

<def-label name="CMCLB">
<tags-item tags="cm.*"/>
</def-label>

<def-label name="apos">
<tags-item tags="apos"/>
</def-label>

<!-- cmp+n, compounds: -->
<def-mult name="CMP+NOMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+NOMM">
<sequence>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMM"/>
</sequence>
</def-mult>
<def-mult name="CMP+NOMNT">
<sequence>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMNT"/>
</sequence>
</def-mult>
<def-mult name="CMP+NOMMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+NOMACR">
<sequence>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMACR"/>
</sequence>
</def-mult>

<!-- cmp+cmp+n -->
<def-mult name="CMP+CMP+NOMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+NOMM">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMM"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+NOMNT">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMNT"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+NOMMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+NOMACR">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMACR"/>
</sequence>
</def-mult>

<!-- cmp+cmp+cmp+n -->
<def-mult name="CMP+CMP+CMP+NOMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+CMP+NOMM">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMM"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+CMP+NOMNT">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMNT"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+CMP+NOMMF">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMMF"/>
</sequence>
</def-mult>
<def-mult name="CMP+CMP+CMP+NOMACR">
<sequence>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<tags-item tags="n.*.cmp"/>
<label-item label="NOMACR"/>
</sequence>
</def-mult>

</tagset>

<forbid>
<label-sequence>
<label-item label="CNJSUB"/>
<label-item label="CNJSUB"/>
</label-sequence>
</forbid>

</tagger>

Binary file added nob.prob
Binary file not shown.
Loading

0 comments on commit 16f4e18

Please sign in to comment.