RE: Addressing Org ISSUE-35

Thanks Dave and Bart, we'll add this topic for our GLD telecom agenda this Thursday!

Agenda forthcoming, 

-g

> -----Original Message-----
> From: Dave Reynolds [mailto:dave.e.reynolds@gmail.com]
> Sent: Tuesday, September 25, 2012 4:37 AM
> To: public-gld-wg@w3.org
> Subject: Addressing Org ISSUE-35
> 
> Apart from some clean ups on the ontology file I believe the only
> comments to address on the Org ontology before Last Call are those
> raised by Bart in May. We never seem to have added those to the tracker
> so, as you will have seen, I added it myself thus creating ISSUE-35.
> 
> As mentioned last week, Bart and I have been discussing this. We have a
> revision proposal for Org, attached below. This covers most of Bart's
> issues.[1]
> 
> This might be a topic to include on Thursday's call.
> 
> Questions for the group (either via email or on the call) are:
> 
> (1) Are there any objections to this revision?
> 
> (2) Do we feel this needs a new Working Draft?
> 
> Given that this is a non-trivial addition we might feel it needs
> another
> WD cycle before taking to Last Call. Or we might feel that, were I to
> produce a revised document that the WG itself is happy with, then we
> could just vote on that as a Last Call candidate.
> 
> Sandro, do you have a steer on that?
> 
> Dave
> 
> [1] It does not cover representing the size of organizations but for
> Bart's use case that is non-trivial because it is time dependent in a
> complex way. A full solution to that would be something like a
> "staffing
> levels" ontology which would need a rich representation for time of day
> ("week day evenings, except on Thursday's and bank holidays"). That is
> beyond the scope of Org and GLD.
> 
> =========================
> 
> # Revision proposal for Organization ontology
> 
> Dave Reynolds, Bart van Leeuwen
> 
> ## Motivation
> 
> Feedback on practical use of the Org ontology within public sector
> bodies indicates a need to be able to represent organizational
> structure independently of the people who hold positions in that
> structure.
> 
> Specific examples are:
> 
> o Representing posts within UK Government, as part of publishing
>    "organograms". Here some Posts can be filled by committees or other
>    organizations, not just by individuals.
> 
> o Alignment of command and control structures for cross-border
>    incident management.
> 
> o Representing groups of staff with particular responsibilities. For
>    example the "evacuation staff" of a hotel where the number of
>    members of that group, rather then necessarily a list of them is
>    needed.
> 
> In principle the org:Membership n-ary relation could be used without
> specifying the org:member in the relationship. However, that modelling
> is obscure, not explicitly sanctioned by the specification and fails
> to cover the case where the post is itself some organization.
> 
> ## Proposed revisions
> 
> 1. To add an explicit representation for organizational posts, based on
> the modelling developed by Jeni Tennison on behalf of data.gov.uk.
> See:   http://reference.data.gov.uk/def/central-government/
> 
>   foaf:Agent --org:holds ->  org:Post  --org:postIn -> org:Organization
>              <-org:heldBy--            <-org:hasPost--
> 
> 2. To make org:Post a subclass of org:Organization to support
> situations such as the UK Government or the "evacuation staff" use
> case where multiple people may hold the same post.
> 
> 3. To extend org:reportsTo to hold between org:Posts as well as
> between foaf:Agents.
> 
> 4. To extend org:role to be applicable to org:Post. This allows
> cross-organizational mapping of posts (as needed in the cross-border
> incident management usecase) through mapping of the associated roles.
> 
> For details of this see the last section.
> 
> ## Impact of the change
> 
> The notion of a Post seems reasonably intuitive and this modelling is
> simple and addresses all the main use cases raised. It is additive and
> does not invalidate any existing usage.
> 
> The challenging issue is that this new mechanism partially overlaps
> with existing mechanisms (org:Membership, direct org:reportsTo). This
> gives different ways to say (nearly) the same thing, which could lead
> to confusion and potential lack of interoperability.
> 
> One option would be to deprecate org:Membership and only have
> org:Posts. However, on review that does not work since we still need
> the option to represent time-limited membership relationships.
> 
> So our proposed resolution of this challenge is to add a section to
> the specification which explicitly describes the partial overlap and
> explains the situations in which each representation is needed.
> In particular, it would recommend that particular applications of Org
> may wish to define a profile or subset of the Org ontology to ensure
> interoperability.
> 
> ## Proposed additions in Turtle format
> 
> org:Post a owl:Class, rdfs:Class;
>      rdfs:label "Post"@en;
>      rdfs:comment """
>        A Post represents some position within an organization that
>        exists independently of the person or persons filling it. Posts
>        may be used to represent situations where a person is a member
>        of an organization ex officio (for example the Secretary of
>        State for Scotland is part of UK Cabinet by virtue of being
>        Secretary of State for Scotland, not as an individual person). A
>        post can be held by multiple people and hence can be treated as
>        a organization in its own right.
>      """@en;
>      rdfs:subClasOf org:Organization;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:holds a owl:ObjectProperty, rdf:Property;
>      rdfs:label "holds"@en;
>      rdfs:comment """Indicates a Post held by some Agent."""@en;
>      rdfs:domain foaf:Agent;
>      rdfs:range  org:Post;
>      rdfs:subPropertyOf org:memberOf;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:heldBy a owl:ObjectProperty, rdf:Property;
>      rdfs:label "held by"@en;
>      rdfs:comment """Indicates an Agent which holds a Post."""@en;
>      rdfs:domain  org:Post;
>      rdfs:range foaf:Agent;
>      rdfs:subPropertyOf org:hasMember;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:holds owl:inverseOf org:heldBy .
> 
> org:postIn a owl:ObjectProperty, rdf:Property;
>      rdfs:label "post in"@en;
>      rdfs:comment """Indicates the Organization in which the Post
> exists."""@en;
>      rdfs:domain org:Post;
>      rdfs:range  org:Organization;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:hasPost a owl:ObjectProperty, rdf:Property;
>      rdfs:label "post"@en;
>      rdfs:comment """Indicates a Post which exists within the
> Organization."""@en;
>      rdfs:domain  org:Organization;
>      rdfs:range   org:Post;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:postIn owl:inverseOf org:hasPost .
> 
> org:role a owl:ObjectProperty, rdf:Property;
>      rdfs:label "role"@en;
>      rdfs:domain [a owl:Class; owl:unionOf (org:Membership org:Post)];
>      rdfs:range  org:Role;
>      rdfs:comment """Indicates the Role that the Agent plays in a
> Membership relationship with an Organization."""@en;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> org:reportsTo a owl:ObjectProperty, rdf:Property;
>      rdfs:label "reports to"@en;
>      rdfs:domain [a owl:Class; owl:unionOf (foaf:Agent org:Post)];
>      rdfs:range  [a owl:Class; owl:unionOf (foaf:Agent org:Post)];
>      rdfs:comment """Indicates a reporting relationship as might be
> depicted on an organizational chart. The precise semantics of the
> reporting relationship will vary by organization but is intended to
> encompass both direct supervisory relationships (e.g. carrying
> objective
> and salary setting authority) and more general reporting or
> accountability relationships (e.g. so called _dotted line_
> reporting)."""@en;
>      rdfs:isDefinedBy <http://www.w3.org/ns/org> ;
>      .
> 
> # Implied entailments
> 
> The relationship between org:Post and org:Membership can be more
> defined in terms of entailment rules:
> 
> {
> ?agent org:holds  ?post .
> ?post  org:postIn ?org .
> } => {
> ?agent  org:memberOf ?org .
> }
> 
> {
> ?agent org:holds  ?post .
> ?post  org:postIn ?org .
> ?post  org:role   ?role .
> } => {
> [] a org:Membership;
>    org:member       ?agent ;
>    org:organization ?org;
>    org:role         ?role .
> }
> 

Received on Tuesday, 25 September 2012 15:31:57 UTC