Add OpenXava

This commit is contained in:
2024-03-24 23:00:47 +01:00
parent 2002d29d0b
commit 8dc83d7511
856 changed files with 37005 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="default">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<non-jta-data-source>java://comp/env/jdbc/bmoDS</non-jta-data-source>
<class>org.openxava.session.GalleryImage</class>
<class>org.openxava.web.editors.DiscussionComment</class>
<class>com.openxava.naviox.model.ConfigurationRecord</class>
<class>com.openxava.naviox.model.Folder</class>
<class>com.openxava.naviox.model.History</class>
<class>com.openxava.naviox.model.Module</class>
<class>com.openxava.naviox.model.ModuleRights</class>
<class>com.openxava.naviox.model.Organization</class>
<class>com.openxava.naviox.model.Role</class>
<class>com.openxava.naviox.model.SessionRecord</class>
<class>com.openxava.naviox.model.SSORecord</class>
<class>com.openxava.naviox.model.User</class>
<properties>
<property name="javax.persistence.schema-generation.database.action" value="update"/>
</properties>
</persistence-unit>
<!-- JUnit Hypersonic -->
<persistence-unit name="junit">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<class>org.openxava.web.editors.DiscussionComment</class>
<class>com.openxava.naviox.model.ConfigurationRecord</class>
<class>com.openxava.naviox.model.Folder</class>
<class>com.openxava.naviox.model.History</class>
<class>com.openxava.naviox.model.Module</class>
<class>com.openxava.naviox.model.ModuleRights</class>
<class>com.openxava.naviox.model.Organization</class>
<class>com.openxava.naviox.model.Role</class>
<class>com.openxava.naviox.model.SessionRecord</class>
<class>com.openxava.naviox.model.SSORecord</class>
<class>com.openxava.naviox.model.User</class>
<properties>
<property name="hibernate.connection.url" value="jdbc:hsqldb:hsql://localhost:1666"/>
</properties>
</persistence-unit>
</persistence>

View File

@@ -0,0 +1,2 @@
# Not used at all.
# Just a trick for Maven archetype generates correctly the package structure.

View File

@@ -0,0 +1,3 @@
# Labels for bmo application
# bmo=bmo

View File

@@ -0,0 +1 @@
# Messages for the bmo application

View File

@@ -0,0 +1,5 @@
# In plain OpenXava the users are added here in the form user=password
# If you want full management of users, roles and modules stored in database,
# get XavaPro from here: http://www.openxava.org/xavapro
admin=admin

View File

@@ -0,0 +1,56 @@
# Password setting
# Encrypting passwords is only available in XavaPro (http://www.openxava.org/xavapro)
encryptPassword=true
storePasswordAsHex=true
# Initial admin password for first time execution and new organizations
initialPasswordForAdmin=admin
# There are many more password options in Configuration module of XavaPro (http://www.openxava.org/xavapro)
# Navigation options
startInLastVisitedModule=true
showModulesMenuWhenNotLogged=true
#fixModulesOnTopMenu=Invoice, Order
#initialModule=Invoice
#rememberVisitedModules=false
# LDAP Config. LDAP is only available in XavaPro (http://www.openxava.org/xavapro)
ldapHost=192.168.0.0
ldapDomain=XX
ldapDN=DC=XX,DC=XX,DC=XX
ldapPort=389
# Multitenancy: Only available in XavaPro (http://www.openxava.org/xavapro)
# The create schema sentence used for creating a new organization
# This is the default one
createSchema=CREATE SCHEMA ${schema}
# These are by database vendor, you can add yours using the database name
# as suffix (actually the first token of connection.getMetaData().getDatabaseProductName())
createSchema.PostgreSQL=CREATE SCHEMA ${schema}
createSchema.HSQL=CREATE SCHEMA ${schema} AUTHORIZATION DBA
# The drop schema sentence used for removing an existing organization
# This is the default one
dropSchema=DROP SCHEMA ${schema} CASCADE
# These are by database vendor, you can add yours using the database name
# as suffix (actually the first token of connection.getMetaData().getDatabaseProductName())
dropSchema.MySQL=DROP SCHEMA ${schema}
# Autologin, uncomment to login automatically with a user
# Useful for testing or applications that do not need user sign in
#autologinUser=admin
#autologinPassword=admin
# Other options
showApplicationName=true
showOrganizationOnSignIn=true
showListOfOrganizationsOnSignIn=true
# If false the server startup is faster, but new modules in your code are not recognized
# Put it to false if you no longer add modules to your apps and have a lot of organizations
updateNaviOXTablesInOrganizationsOnStartup=true
# Validator for email when sign up and using email as user name is on.
# It must implement IValidator. The default value is org.openxava.validators.EmailValidator
#emailValidatorForSignUpClass=org.openxava.validators.EmailValidator

View File

@@ -0,0 +1,232 @@
# Look at openxavatest/src/main/resources/xava.properties for more options
# Please note that the list of commented entries at the end of this file includes
# ALL of the possible options, including those listed in OpenXavaTest and others not listed elsewhere.
#
readOnlyAsLabel=false
i18nWarnings=true
showCountInList=true
maxSizeForTextEditor=80
csvSeparator=;
detailOnBottomInCollections=false
failOnAnnotationMisuse=true
buttonsForNoImageActions=false
toUpperForStringArgumentsInConditions=true
showFilterByDefaultInList=true
mapFacadeAutoCommit=false
#applicationPort=8080
# Visual style
# styleCSS=terra.css
# styleCSS=light.css
# styleCSS=dark.css
# styleCSS=black-and-white.css
# styleCSS=blue.css
# To do small modification over the current style just add your css rules to custom.css in web/xava/style
# To create a completely new style: https://www.openxava.org/OpenXavaDoc/docs/custom-style_en.html
# If you remove all themes the theme chooser is disabled
themes=terra.css, light.css, dark.css, black-and-white.css, blue.css
#SMTP related information
smtpHost=Host
smtpPort=25
smtpUserId=user
smtpUserPassword=password
smtpHostTrusted=false
smtpStartTLSEnable=false
# LOGGING LEVEL FOR OpenXava AND OpenXava APPLICATIONS
# Possibles values are: SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF
# This affects only if Java logging is used (usually in Tomcat and WebSphere).
# It does not affect log4j configuration (usually in JBoss or if you use log4j in your app).
# Default value is INFO
javaLoggingLevel=FINE
# LOGGING LEVEL FOR HIBERNATE ENGINE
# Possibles values are: SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF
# Default value is INFO
#hibernateJavaLoggingLevel=FINEST
# Maps configuration used for @Stereotype("COORDINATES")
# WARNING! The settings below are for your convenience. It's your responsibility to comply with the terms of use,
# to write the correct attribution and to contract an usage plan with the provider if needed.
# OpenTopoMap is free to use even for commercial projects with CC-BY-SA license
#mapsTileProvider=https://b.tile.opentopomap.org/{z}/{x}/{y}.png
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://opentopomap.org">OpenTopoMap</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)
# MapBox is a commercial provider, although they offer free plans. You have to register in https://www.mapbox.com/ to get an access token
# Change below YOUR_ACCESS_TOKEN by your own access token
# For this provider you have to define mapsTileSize and mapsZoomOffset in order the maps would be displayed nicely
#mapsTileProvider=https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/{z}/{x}/{y}?access_token=YOUR_ACCESS_TOKEN
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://www.mapbox.com/">Mapbox</a>
#mapsTileSize=512
#mapsZoomOffset=-1
# Stamen Toner is free to use even for commercial projects with CC-BY-SA license
#mapsTileProvider=http://tile.stamen.com/toner/{z}/{x}/{y}.png
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://stamen.com/">Stamen</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)
# Stamen Toner is free to use even for commercial projects with CC-BY-3.0 license
#mapsTileProvider=http://tile.stamen.com/terrain/{z}/{x}/{y}.png
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://stamen.com/">Stamen</a> (<a href="https://creativecommons.org/licenses/by/3.0/">CC-BY-3.0</a>)
# OpenStreeMap as tile provider can by used for tests and experiments but not for high volume sites or commercial applications
# Look at the terms of use: https://operations.osmfoundation.org/policies/tiles/
#mapsTileProvider=https://tile.openstreetmap.org/{z}/{x}/{y}.png
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a>
# Thunderforest is a commercial provider, although they offer free plans. You have to register in https://www.thunderforest.com/ to get an API key
# Change below YOUR_API_KEY by your own API key
#mapsTileProvider=https://tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png?apikey=YOUR_API_KEY
#mapsAttribution=Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, Imagery &copy; <a href="https://www.thunderforest.com/">Thunderforest</a>
# List of hosts, comma separated, that can be used as source for images. It is added to img-src of Content Security Policy
#trustedHostsForImages=https://yourhost.com/
# List of hosts, comma separated, that can be used as source for scripts. It is added to script-src of Content Security Policy
#trustedHostsForScripts=https://yourhost.com/
# List of hosts, comma separated, that can be used as source for CSSs. It is added to style-src of Content Security Policy
#trustedHostsForStyles=https://yourhost.com/
# List of hosts, comma separated, that can be used as source for frames and iframes. It is added to frame-src of Content Security Policy
#trustedHostsForFrames=https://yourhost.com/
# help
#helpAvailable=false
#helpInNewWindow=false
# if 'helpPrefix' and 'helpSuffix' are not defined by default, they have 'http://www.openxava.org/OpenXavaDoc/docs/help_' and '.html'
#
# if the help is inside of our project
#helpSuffix=.html
#helpPrefix=help/
#
# if the help is out of our project start the URL with http: or https:
#helpPrefix=http://openxavatest.wikispaces.com/
#helpSuffix=
#
# If you want to add the language as suffix (en, es, fr, etc.) end the URL with _
# helpPrefix=http://openxavatest.wikispaces.com/help_
########################################################################################################################################
# List of all possible options for xava.properties
# Uncomment to enable, but understand what you are doing!
#
# Entries are listed under their respective category, then each entry is listed.
#
# Category - Email
# Property Description Default (if applicable)
# smtpHost Host for sending mail through SMTP provider
# smtpHostTrusted If true a mail server with an expired certificate can be used false
# smtpPort Port to use for sending mail through a SMTP provider
# smtpUserId User id for connecting to mail SMTP provider
# smtpUserPassword User password for connecting to the SMTP server
# Category - Persistence
# Property Description Default (if applicable)
# defaultPersistenceUnit Persistence unit to be used as default default
# mapFacadeAsEJB false
# mapFacadeAutoCommit false
#
# Labels, Messages and Locales
# i18nWarnings false
#
# Application and Controllers
# defaultLabelFormat Possibles values for defaultLabelFormat are: NORMAL
# NORMAL, SMALL and NO_LABEL
# defaultLabelStyle Pre-defined: bold-label, italic-label default (???)
# defaultModeController Possibles values for defaultModeController are: Mode
# Mode, DetailList, DetailOnly, ListOnly and SplitOnly. Also, you can name your
# own custom controllers. If not specified, the default mode controller
# associated to the style is used.
# duplicateComponentWarnings On encountering duplicate components like true
# controllers or modules, warning messages are written to the log
# failOnAnnotationMisuse Throws error if properties, references or collections true
# have non-applicable annotations.
# generateDefaultModules If true it is not required to define modules in true
# application.xml, OX generates the modules' information automatically
#
# Views and Layouts
# alignedByColumns If true all properties within views are displayed aligned false
# by column same as using # on all views.
# buttonsForNoImageActions If true when an action has no image it uses a button false
# for display it, else it uses a link.
# maxSizeForTextEditor On large text (String) properties limits the display size 100
# to this value
# readOnlyAsLabel ???? false
# showLabelsForToolBarActions If false the toolbar shows only the action images, true
# no text is displayed
# useIconsInsteadOfImages When both icon and image are defined for an action, true
# the icon will be used
# flowLayout If true adjusts the fields layout to the size of the page, false
# ignoring the , ; # used in @View
# showDefaultActionInBottom If true the default action is shown as the first true
# action in bottom, even if it is already in top buttom bar
#
# Lists and Collections
# customizeList If false, list customization is disallowed true
# detailOnBottomInCollections false
# ignoreAccentsForStringArgumentsInConditions If true it ignores accents to false
# string arguments for conditions in list and collections
# pageRowCount Default number of objects to show in lists and collections 10
# resizeColumns If false, columns resizing is disabled false
# saveAndStayForCollections If false, the save and stay button is hidden when true
# adding elements to collections
# showCountInList Displays the number of items at the bottom of the list true
# showIconForViewReadOnly true
# showFilterByDefaultInList If true filter is shown by default for list on init. true
# The user always has the option to show or hide the filter
# summationInList If true, summary rows are shown at bottom of lists, under true
# numerical columns. Users can manually turn on or off the totals at each column
# tabAsEJB false
# toUpperForStringArgumentsInConditions If true upper case conversions are applied true
# to string arguments for conditions in list and collections. If true, also
# searching using list or collections are more flexible (the user can use
# indistinctly upper or lower case) but can be slower in some databases
# (because they cannot use index)
# filterOnChange Filtering is done automatically when an option of a combo true
# is chosen, without clicking on filter button
#
# Help
# helpAvailable If true an icon to go to help is shown in the module false
# helpInNewWindow If true the help page is opened in a new window, if false, true
# the help page is opened in the current window
# helpPrefix Help prefix for the help URL generation
# helpSuffix Help suffix for the help URL generation
#
# FILE Stereotype
# filePersistorClass Defines which class provides the storing of attachments. org.openxava.web.editors.FileSystemPersistor
# filesPath File storage directory, if no database is used.
#
# Reporting
# reportParametersProviderClass Class that provides the report parameters org.openxava.util.DefaultReportParametersProvider
#
# Miscellaneous
# csvEncoding Because it's impossible to obtain the client encoding, that used by Excel to open the file. UTF-8, ISO-8859-1
# csvSeparator ;
# hibernateJavaLoggingLevel Logging level for hibernate. Valid values are: INFO
# SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF
# javaLoggingLevel Logging level for java. Valid values are: INFO
# SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF
# componentParsersClasses List of comma separated classes used for parsing the org.openxava.component.parse.XMLComponentParser, org.openxava.component.parse.AnnotatedClassParser
# components, they must implement org.openxava.component.parse.IComponentParser
#
# For email notifications
#accessTrackerProvidersClasses=org.openxava.util.EmailNotificationsAccessTrackerProvider
#
# For log access tracking
#accessTrackerProvidersClasses=org.openxava.util.LogAccessTrackerProvider
#
# For email notifications and log access tracking
#accessTrackerProvidersClasses=org.openxava.util.EmailNotificationsAccessTrackerProvider,org.openxava.util.LogAccessTrackerProvider
#
# For using ENTER to move to next field
#enterMovesToNextField=true
# To set the property names (in order) that will shown in combo on @Descriptionslist
#defaultDescriptionPropertiesValueForDescriptionsList=descripcion,description,nombre,name,descricao,nome

View File

@@ -0,0 +1,23 @@
<?xml version = "1.0" encoding = "ISO-8859-1"?>
<!DOCTYPE application SYSTEM "dtds/application.dtd">
<application name="bmo">
<!--
A default module for each entity is assumed with the
controllers on <default-module/>
-->
<default-module>
<controller name="Typical"/>
</default-module>
<!--
You can define additional modules, for example:
<module name="OnlyReadTeacher">
<model name="Teacher"/>
<controller name="Print"/>
</module>
-->
</application>

View File

@@ -0,0 +1,25 @@
<?xml version = "1.0" encoding = "ISO-8859-1"?>
<!DOCTYPE controllers SYSTEM "dtds/controllers.dtd">
<controllers>
<!-- Environment variable:
<env-var name="bmo_DEFAULT_YEAR" value="2015"/>
-->
<!-- Session object:
<object name="bmo_activeYear" class="java.lang.Integer" value="2015"
scope="global"/>
-->
<!-- Controller:
<controller name="Teacher">
<extends controller="Typical"/>
<action name="new" icon="library-plus" keystroke="Control N"
class="actions.CreateTeacher">
</action>
</controller>
-->
</controllers>

View File

@@ -0,0 +1,9 @@
<!ELEMENT annotation-type-default (for*)>
<!ELEMENT for EMPTY>
<!ATTLIST for
annotation CDATA #REQUIRED
type CDATA #REQUIRED
>

View File

@@ -0,0 +1,75 @@
<!ELEMENT aplicacion (modulo-defecto?, modulo*)>
<!ATTLIST aplicacion
nombre ID #REQUIRED
etiqueta CDATA #IMPLIED
>
<!ELEMENT modulo-defecto (controlador*)>
<!ELEMENT modulo (doc | (var-entorno*, modelo?, vista?, vista-swing?, vista-web?, tab?, controlador*, controlador-modo?) | listado)>
<!ATTLIST modulo
nombre ID #REQUIRED
carpeta CDATA #IMPLIED
etiqueta CDATA #IMPLIED
descripcion CDATA #IMPLIED
>
<!ELEMENT doc EMPTY>
<!ATTLIST doc
url CDATA #REQUIRED
idiomas CDATA #IMPLIED
>
<!ELEMENT var-entorno EMPTY>
<!ATTLIST var-entorno
nombre CDATA #REQUIRED
valor CDATA #IMPLIED
>
<!ELEMENT modelo EMPTY>
<!ATTLIST modelo
nombre CDATA #REQUIRED
>
<!ELEMENT vista EMPTY>
<!ATTLIST vista
nombre CDATA #REQUIRED
>
<!ELEMENT tab EMPTY>
<!ATTLIST tab
nombre CDATA #REQUIRED
>
<!ELEMENT vista-swing EMPTY>
<!ATTLIST vista-swing
clase CDATA #REQUIRED
>
<!ELEMENT vista-web EMPTY>
<!ATTLIST vista-web
url CDATA #REQUIRED
>
<!ELEMENT controlador EMPTY>
<!ATTLIST controlador
nombre CDATA #REQUIRED
>
<!ELEMENT controlador-modo EMPTY>
<!ATTLIST controlador-modo
nombre CDATA #REQUIRED
>
<!ELEMENT listado EMPTY>
<!ATTLIST listado
modelo CDATA #REQUIRED
tab CDATA #IMPLIED
>

View File

@@ -0,0 +1,62 @@
<!ELEMENT application (default-module?, module*)>
<!ATTLIST application
name ID #REQUIRED
label CDATA #IMPLIED
>
<!ELEMENT default-module (controller*)>
<!ELEMENT module (doc | (env-var*, model?, view?, web-view?, tab?, controller*, mode-controller?))>
<!ATTLIST module
name ID #REQUIRED
folder CDATA #IMPLIED
label CDATA #IMPLIED
description CDATA #IMPLIED
>
<!ELEMENT doc EMPTY>
<!ATTLIST doc
url CDATA #REQUIRED
languages CDATA #IMPLIED
>
<!ELEMENT env-var EMPTY>
<!ATTLIST env-var
name CDATA #REQUIRED
value CDATA #IMPLIED
>
<!ELEMENT model EMPTY>
<!ATTLIST model
name CDATA #REQUIRED
>
<!ELEMENT view EMPTY>
<!ATTLIST view
name CDATA #REQUIRED
>
<!ELEMENT tab EMPTY>
<!ATTLIST tab
name CDATA #REQUIRED
>
<!ELEMENT web-view EMPTY>
<!ATTLIST web-view
url CDATA #REQUIRED
>
<!ELEMENT controller EMPTY>
<!ATTLIST controller
name CDATA #REQUIRED
>
<!ELEMENT mode-controller EMPTY>
<!ATTLIST mode-controller
name CDATA #REQUIRED
>

View File

@@ -0,0 +1,75 @@
<!ELEMENT subcontrolador EMPTY>
<!ATTLIST subcontrolador
controlador CDATA #REQUIRED
imagen CDATA #IMPLIED
icono CDATA #IMPLIED
modo (detail|list|ALL|NONE) "ALL"
>
<!ELEMENT var-entorno EMPTY>
<!ATTLIST var-entorno
nombre CDATA #REQUIRED
valor CDATA #IMPLIED
>
<!ELEMENT objeto EMPTY>
<!ATTLIST objeto
nombre CDATA #REQUIRED
clase CDATA #REQUIRED
valor CDATA #IMPLIED
ambito (modulo|global) "modulo"
>
<!ELEMENT accion (poner*, usa-objeto*)>
<!ATTLIST accion
nombre CDATA #REQUIRED
etiqueta CDATA #IMPLIED
descripcion CDATA #IMPLIED
modo (detail|list|ALL|NONE) "ALL"
metodo CDATA #IMPLIED
imagen CDATA #IMPLIED
icono CDATA #IMPLIED
atajo-de-teclado CDATA #IMPLIED
clase CDATA #IMPLIED
oculta (true|false) "false"
al-iniciar (true|false) "false"
en-cada-peticion (true|false) "false"
antes-de-cada-peticion (true|false) "false"
despues-de-cada-peticion (true|false) "false"
por-defecto (nunca|casi-nunca|si-posible|casi-siempre|siempre) "casi-nunca"
cuesta (true|false) "false"
confirmar (true|false) "false"
en-cada-fila (true|false) "false"
procesar-elementos-seleccionados (true|false) "false"
disponible-en-nuevo (true|false) "true"
pierde-datos-cambiados (true|false) "false"
>
<!ELEMENT usa-objeto EMPTY>
<!ATTLIST usa-objeto
nombre CDATA #REQUIRED
propiedad-accion CDATA #IMPLIED
>
<!ELEMENT poner EMPTY>
<!ATTLIST poner
propiedad CDATA #REQUIRED
valor CDATA #REQUIRED
>
<!ELEMENT hereda-de EMPTY>
<!ATTLIST hereda-de
controlador CDATA #REQUIRED
acciones-excluidas CDATA #IMPLIED
>
<!ELEMENT controlador (hereda-de*, (accion|subcontrolador)*)>
<!ATTLIST controlador
nombre CDATA #REQUIRED
etiqueta CDATA #IMPLIED
imagen CDATA #IMPLIED
icono CDATA #IMPLIED
clase CDATA #IMPLIED
contexto (comun|swing|web) "comun"
>
<!ELEMENT controladores (var-entorno*, objeto*, controlador*)>

View File

@@ -0,0 +1,72 @@
<!ELEMENT subcontroller EMPTY>
<!ATTLIST subcontroller
controller CDATA #REQUIRED
image CDATA #IMPLIED
icon CDATA #IMPLIED
mode (detail|list|ALL|NONE) "ALL"
>
<!ELEMENT env-var EMPTY>
<!ATTLIST env-var
name CDATA #REQUIRED
value CDATA #IMPLIED
>
<!ELEMENT object EMPTY>
<!ATTLIST object
name CDATA #REQUIRED
class CDATA #REQUIRED
value CDATA #IMPLIED
scope (module|global) "module"
>
<!ELEMENT action (set*, use-object*)>
<!ATTLIST action
name CDATA #REQUIRED
label CDATA #IMPLIED
description CDATA #IMPLIED
mode (detail|list|ALL|NONE) "ALL"
image CDATA #IMPLIED
icon CDATA #IMPLIED
keystroke CDATA #IMPLIED
class CDATA #REQUIRED
hidden (true|false) "false"
on-init (true|false) "false"
on-each-request (true|false) "false"
before-each-request (true|false) "false"
after-each-request (true|false) "false"
by-default (never|almost-never|if-possible|almost-always|always) "almost-never"
takes-long (true|false) "false"
confirm (true|false) "false"
in-each-row (true|false) "false"
process-selected-items (true|false) "false"
available-on-new (true|false) "true"
loses-changed-data (true|false) "false"
>
<!ELEMENT use-object EMPTY>
<!ATTLIST use-object
name CDATA #REQUIRED
action-property CDATA #IMPLIED
>
<!ELEMENT set EMPTY>
<!ATTLIST set
property CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT extends EMPTY>
<!ATTLIST extends
controller CDATA #REQUIRED
excluded-actions CDATA #IMPLIED
>
<!ELEMENT controller (extends*, (action|subcontroller)*)>
<!ATTLIST controller
name CDATA #REQUIRED
label CDATA #IMPLIED
image CDATA #IMPLIED
icon CDATA #IMPLIED
>
<!ELEMENT controllers (env-var*, object*, controller*)>

View File

@@ -0,0 +1,15 @@
<!ELEMENT conversores (para-estereotipo|para-tipo)+>
<!ELEMENT para-estereotipo EMPTY>
<!ATTLIST para-estereotipo
estereotipo CDATA #REQUIRED
clase-conversor CDATA #REQUIRED
tipo-cmp CDATA #REQUIRED
>
<!ELEMENT para-tipo EMPTY>
<!ATTLIST para-tipo
tipo CDATA #REQUIRED
clase-conversor CDATA #REQUIRED
tipo-cmp CDATA #REQUIRED
>

View File

@@ -0,0 +1,15 @@
<!ELEMENT converters (for-stereotype|for-type)+>
<!ELEMENT for-stereotype EMPTY>
<!ATTLIST for-stereotype
stereotype CDATA #REQUIRED
converter-class CDATA #REQUIRED
cmp-type CDATA #REQUIRED
>
<!ELEMENT for-type EMPTY>
<!ATTLIST for-type
type CDATA #REQUIRED
converter-class CDATA #REQUIRED
cmp-type CDATA #REQUIRED
>

View File

@@ -0,0 +1,23 @@
<!ELEMENT default-size (for-stereotype|for-type|for-annotation)+>
<!ELEMENT for-stereotype EMPTY>
<!ATTLIST for-stereotype
name CDATA #REQUIRED
size CDATA #REQUIRED
scale CDATA #IMPLIED
>
<!ELEMENT for-type EMPTY>
<!ATTLIST for-type
class CDATA #REQUIRED
size CDATA #REQUIRED
scale CDATA #IMPLIED
>
<!ELEMENT for-annotation EMPTY>
<!ATTLIST for-annotation
class CDATA #REQUIRED
size CDATA #REQUIRED
scale CDATA #IMPLIED
>

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT editores (editor*)>
<!ELEMENT editor (propiedad*, formateador?, formateador-lista?, (para-tipo | para-estereotipo | para-propiedad-modelo | para-valores-posibles | para-referencias | para-referencia | para-colecciones | para-colecciones-elementos | para-coleccion | para-tabs | para-tab | para-anotacion)*)>
<!ATTLIST editor
nombre CDATA #IMPLIED
clase CDATA #IMPLIED
url CDATA #IMPLIED
formatear (true|false) "true"
depende-de-estereotipos CDATA #IMPLIED
depende-de-propiedades CDATA #IMPLIED
enmarcable (true|false) "false"
recargar-siempre (true|false) "false"
compuesto (true|false) "false"
icono CDATA #IMPLIED
accion-iniciar CDATA #IMPLIED
accion-liberar CDATA #IMPLIED
elementos-seleccionables (true|false) "true"
>
<!ELEMENT propiedad EMPTY>
<!ATTLIST propiedad
nombre CDATA #REQUIRED
valor CDATA #REQUIRED
>
<!ELEMENT formateador (poner*)>
<!ATTLIST formateador
clase CDATA #REQUIRED
del-tipo (true|false) "false"
>
<!ELEMENT formateador-lista (poner*)>
<!ATTLIST formateador-lista
clase CDATA #REQUIRED
del-tipo (true|false) "false"
>
<!ELEMENT poner EMPTY>
<!ATTLIST poner
propiedad CDATA #REQUIRED
valor CDATA #REQUIRED
>
<!ELEMENT para-tipo EMPTY>
<!ATTLIST para-tipo
tipo CDATA #REQUIRED
>
<!ELEMENT para-estereotipo EMPTY>
<!ATTLIST para-estereotipo
estereotipo CDATA #REQUIRED
>
<!ELEMENT para-propiedad-modelo EMPTY>
<!ATTLIST para-propiedad-modelo
modelo CDATA #REQUIRED
propiedad CDATA #REQUIRED
>
<!ELEMENT para-valores-posibles EMPTY>
<!ELEMENT para-referencias EMPTY>
<!ELEMENT para-referencia EMPTY>
<!ATTLIST para-referencia
modelo CDATA #REQUIRED
>
<!ELEMENT para-colecciones EMPTY>
<!ELEMENT para-colecciones-elementos EMPTY>
<!ELEMENT para-coleccion EMPTY>
<!ATTLIST para-coleccion
modelo CDATA #REQUIRED
>
<!ELEMENT para-tabs EMPTY>
<!ELEMENT para-tab EMPTY>
<!ATTLIST para-tab
modelo CDATA #REQUIRED
>
<!ELEMENT para-anotacion EMPTY>
<!ATTLIST para-anotacion
anotacion CDATA #REQUIRED
>

View File

@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT editors (editor*)>
<!ELEMENT editor (property*, formatter?, list-formatter?, (for-type | for-stereotype | for-model-property | for-valid-values | for-references | for-reference | for-collections | for-element-collections | for-collection | for-tabs | for-tab | for-annotation)*)>
<!ATTLIST editor
name CDATA #IMPLIED
url CDATA #REQUIRED
format (true|false) "true"
depends-stereotypes CDATA #IMPLIED
depends-properties CDATA #IMPLIED
frame (true|false) "false"
always-reload (true|false) "false"
composite (true|false) "false"
icon CDATA #IMPLIED
init-action CDATA #IMPLIED
release-action CDATA #IMPLIED
selectable-items (true|false) "true"
>
<!ELEMENT property EMPTY>
<!ATTLIST property
name CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT formatter (set*)>
<!ATTLIST formatter
class CDATA #IMPLIED
from-type (true|false) "false"
>
<!ELEMENT list-formatter (set*)>
<!ATTLIST list-formatter
class CDATA #IMPLIED
from-type (true|false) "false"
>
<!ELEMENT set EMPTY>
<!ATTLIST set
property CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT for-type EMPTY>
<!ATTLIST for-type
type CDATA #REQUIRED
>
<!ELEMENT for-stereotype EMPTY>
<!ATTLIST for-stereotype
stereotype CDATA #REQUIRED
>
<!ELEMENT for-model-property EMPTY>
<!ATTLIST for-model-property
model CDATA #REQUIRED
property CDATA #REQUIRED
>
<!ELEMENT for-valid-values EMPTY>
<!ELEMENT for-references EMPTY>
<!ELEMENT for-reference EMPTY>
<!ATTLIST for-reference
model CDATA #REQUIRED
>
<!ELEMENT for-collections EMPTY>
<!ELEMENT for-element-collections EMPTY>
<!ELEMENT for-collection EMPTY>
<!ATTLIST for-collection
model CDATA #REQUIRED
>
<!ELEMENT for-tabs EMPTY>
<!ELEMENT for-tab EMPTY>
<!ATTLIST for-tab
model CDATA #REQUIRED
>
<!ELEMENT for-annotation EMPTY>
<!ATTLIST for-annotation
annotation CDATA #REQUIRED
>

View File

@@ -0,0 +1,22 @@
<!ELEMENT longitud-defecto (para-estereotipo|para-tipo|para-anotacion)+>
<!ELEMENT para-estereotipo EMPTY>
<!ATTLIST para-estereotipo
nombre CDATA #REQUIRED
longitud CDATA #REQUIRED
escala CDATA #IMPLIED
>
<!ELEMENT para-tipo EMPTY>
<!ATTLIST para-tipo
clase CDATA #REQUIRED
longitud CDATA #REQUIRED
escala CDATA #IMPLIED
>
<!ELEMENT para-anotacion EMPTY>
<!ATTLIST para-anotacion
clase CDATA #REQUIRED
longitud CDATA #REQUIRED
escala CDATA #IMPLIED
>

View File

@@ -0,0 +1,9 @@
<!ELEMENT stereotype-type-default (for*)>
<!ELEMENT for EMPTY>
<!ATTLIST for
stereotype CDATA #REQUIRED
type CDATA #REQUIRED
>

View File

@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT tabs-default-values (tab*)>
<!ELEMENT tab
(filter?, row-style*, properties?, base-condition?, default-order?, (for-model* | except-for-model* | for-all-models) )
>
<!ATTLIST tab
editors CDATA #IMPLIED
>
<!ELEMENT base-condition
(#PCDATA)
>
<!ELEMENT default-order
(#PCDATA)
>
<!ELEMENT properties
(#PCDATA)
>
<!ELEMENT set EMPTY>
<!ATTLIST set
property CDATA #REQUIRED
from CDATA #IMPLIED
value CDATA #IMPLIED
>
<!ELEMENT row-style EMPTY>
<!ATTLIST row-style
style CDATA #REQUIRED
property CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT filter (set*)>
<!ATTLIST filter
class CDATA #REQUIRED
>
<!ELEMENT for-model EMPTY>
<!ATTLIST for-model
model CDATA #REQUIRED
>
<!ELEMENT except-for-model EMPTY>
<!ATTLIST except-for-model
model CDATA #REQUIRED
>
<!ELEMENT for-all-models EMPTY>

View File

@@ -0,0 +1,9 @@
<!ELEMENT tipo-anotacion-defecto (para*)>
<!ELEMENT para EMPTY>
<!ATTLIST para
anotacion CDATA #REQUIRED
tipo CDATA #REQUIRED
>

View File

@@ -0,0 +1,9 @@
<!ELEMENT tipo-estereotipo-defecto (para*)>
<!ELEMENT para EMPTY>
<!ATTLIST para
estereotipo CDATA #REQUIRED
tipo CDATA #REQUIRED
>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT validadores (validador*, validador-requerido*, validador-defecto*)>
<!ELEMENT validador EMPTY>
<!ATTLIST validador
nombre ID #REQUIRED
clase CDATA #REQUIRED
>
<!ELEMENT validador-requerido ((nombre-validador | clase-validador), (para-tipo | para-estereotipo | para-anotacion)+)>
<!ELEMENT validador-defecto ((nombre-validador | clase-validador), (para-tipo | para-estereotipo | para-anotacion)+)>
<!ELEMENT nombre-validador EMPTY>
<!ATTLIST nombre-validador
nombre CDATA #REQUIRED
>
<!ELEMENT clase-validador EMPTY>
<!ATTLIST clase-validador
clase CDATA #REQUIRED
>
<!ELEMENT para-tipo EMPTY>
<!ATTLIST para-tipo
tipo CDATA #REQUIRED
>
<!ELEMENT para-estereotipo EMPTY>
<!ATTLIST para-estereotipo
estereotipo CDATA #REQUIRED
>
<!ELEMENT para-anotacion EMPTY>
<!ATTLIST para-anotacion
anotacion CDATA #REQUIRED
>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT validators (validator*, required-validator*, default-validator*)>
<!ELEMENT validator EMPTY>
<!ATTLIST validator
name ID #REQUIRED
class CDATA #REQUIRED
>
<!ELEMENT required-validator ((validator-name | validator-class), (for-type | for-stereotype | for-annotation)+)>
<!ELEMENT default-validator ((validator-name | validator-class), (for-type | for-stereotype | for-annotation)+)>
<!ELEMENT validator-name EMPTY>
<!ATTLIST validator-name
name CDATA #REQUIRED
>
<!ELEMENT validator-class EMPTY>
<!ATTLIST validator-class
class CDATA #REQUIRED
>
<!ELEMENT for-type EMPTY>
<!ATTLIST for-type
type CDATA #REQUIRED
>
<!ELEMENT for-stereotype EMPTY>
<!ATTLIST for-stereotype
stereotype CDATA #REQUIRED
>
<!ELEMENT for-annotation EMPTY>
<!ATTLIST for-annotation
annotation CDATA #REQUIRED
>

View File

@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT valores-defecto-tab (tab*)>
<!ELEMENT tab
(filtro?, estilo-fila*, propiedades?, condicion-base?, orden-defecto?, (para-modelo* | excepto-para-modelo* | para-todos-los-modelos) )
>
<!ATTLIST tab
editores CDATA #IMPLIED
>
<!ELEMENT condicion-base
(#PCDATA)
>
<!ELEMENT orden-defecto
(#PCDATA)
>
<!ELEMENT propiedades
(#PCDATA)
>
<!ELEMENT poner EMPTY>
<!ATTLIST poner
propiedad CDATA #REQUIRED
desde CDATA #IMPLIED
valor CDATA #IMPLIED
>
<!ELEMENT estilo-fila EMPTY>
<!ATTLIST estilo-fila
estilo CDATA #REQUIRED
propiedad CDATA #REQUIRED
valor CDATA #REQUIRED
>
<!ELEMENT filtro (poner*)>
<!ATTLIST filtro
clase CDATA #REQUIRED
>
<!ELEMENT para-modelo EMPTY>
<!ATTLIST para-modelo
modelo CDATA #REQUIRED
>
<!ELEMENT excepto-para-modelo EMPTY>
<!ATTLIST excepto-para-modelo
modelo CDATA #REQUIRED
>
<!ELEMENT para-todos-los-modelos EMPTY>