Dev:Ontology
From FOSSWiki
Contents |
Ontology
Here we try to keep track of our boundaries.
Please check the Yahoo List for the discussion on Ontology/Metadata to date.
Schedule Starts 1 July 2006 Revision of progress scheduled for October 2006
Notes Please define all variable as [G] Global (if they apply to all modules0 or [L] local, if they apply only to the module they are referenced in
Instructions
1. Existing Module developers please provide information about their current modules as specified below so that we can map our current status and work towards internal/external harmonisation - This will help interoperability and robustness
2. New module developers before they may a start to take into account the current ontology (after it's mapped) and either adopt it (the new module conforms to the exising ontology) or modify it (expand, modify our ontology as required to take into account the new module/new reality)
Entities
List of entities as adopted by each module. Please make sure each key dependency is also stated, and if avaialble, please link to dependency diagrams.
Metadata
List of metadata tags for each module
Controlled Vocabulary/Glossary
The Controlled Vocabulary/Glossary is a list of keywords and their meanings used by each developer. As the system grows, the words we use are likely to be conflicting and generate confusion. In times of emergency effective communication is critical.
References
Please list all the references that your module is taking into account. These can be best practices, ISO, or any other external item that your module is likely to refer to directly or indirectly. Where appropriate, indicate if your module adopts a given reference, or if the listing is purely as background information
Controlled Vocabulary
Using Terminology Consistently
Reference Schemas, ontologies and Forms
Please add you links below:
Data Collection Forms used in Tsunami days Image:FinalXReportXHambantota.pdf
Current Sahana Logical Schema
Notation - We shall use the following structure to describe the logical/conceptual schema
<entity> : <parent entity>
# <Description....>
[{]
- <attribute/meta data> [?|*|+] [ -> Rel:<entity>: [ <attribute> ] ] [ = <option1>, <option2>... ]
[} [?|*|+] ]
Key:
{..} = Attribute groups
* = 0 or more
+ = 1 or more
! = 1 (required field)
nothing = 0 or 1
Problem Domain Specific Entities
Person Entities
Person
- full name
- family name
- localized name
- custom name
- race group = Sinhalese, Tamil..
- religion group = Buddhist, Christian..
- marital status group = single, married..
- gender group = male, female , unknown...
- occupation
- age group = infant, child, teenager, adult...
- date of birth
{
- group type = houshold, organization..
- group name
} *
- is a relief worker
- is a victim
- person status group = missing, alive and well, injured...
- eye color = black, brown, blue..
- skin color group = brown, dark, fair...
- blood type group = A+, O- , AB...
- height
- weight
- physical injuries
- extra comments on physical appearance
{
- contact type = mobile, email, fax...
- contact value
}
Person Location Details : Location - location reference - location type group = Permanent home address, Impact location... - address - postcode
Missing Person: Person - last seen - last clothing - comments on missing person
Deceased Person: Person - date of the death - place of death - location : location - extra details
Reporter:Person - reporting person : Person - relationship
Volunteer:Person - services offered +=Agriculture,Communications,Disaster Prepareness....
Location Entities
Location - name - iso code - location type group = Country, Province, District... - description - gis coordinates
Organization related entities
Organization - name ! - parent organization -> Rel:Organization - type ! = Government,Private,Multinational,Bilateral.... - sector + = Agriculture,Communications,Disaster Prepareness.... - location ! - registration number - man power - resources - privacy - relief workers + -> Rel:Volunteer:Person
Entry # Each time new data is entered on a person it is given as a seperate entry -
Camp Entities
camp
# schema for camps
- name of camp
- camp type* = temporary shelter, ngo run camp, government run camp...
- camp address
- camp location -> Location
- camp admin name
- camp admin contact number
- victim* -> Person
- relief worker* -> Person
- parent organization* -> Organization
- services+ = sanitation, water...
- geographical location -> Location
{
- family count
- total count
- men count
- women count
- children count
}
Request Management related entities
Request
- requester[!]: person
- status[!] = open, fulfilled
- request location[!]: location
- associated camp
- associated organization
- item
{
- name
- category
- units
- quantity
- priority
} [+]
- fulfillment
{
- donor: person
- item
- quantity
- status
} [*]
Pledge
- donor[!]: person
- status[!] = confirmed, not confirmed
- item
{
- name
- category
- units
- quantity
} [!]

