Metrics Interchange
Recommendation, 2007 April 15
Editor:
Chuck Allen, HR-XML Consortium, Inc.
Contributors:
Joanne Fritz, ADP; Scott Mitchell, ePredix Inc.; Kim Bartkus, HR-XML; Paul Kiel, HR-XML; Heather Hartmann, Human Capital Metrics Consortium; Nick Scobbo, Mitre; Bill Kerr, Oracle; Barbara Davison, Saratoga Institute/PriceWaterhouseCoopers; Dave Ingram, The Gallup Organization; Michelle Winston, The Gallup Organization
Copyright © 2007 HR-XML Consortium, Inc.
Abstract
This document describes the simple, yet flexible schema capable of supporting a wide variety of integration scenarios involving the exchange of HR metrics data.
Table of Contents
1.3.2 Items Outside of Design Scope
1.4.1 Metrics Reporting Organization. 6
2 Supported Business Processes
2.1 Metrics Interchange Business Process
2.1.1 Business Process Scenarios
3 Component Schemas and Dependencies
4 Implementation Considerations
5 Appendix A - Document Version History
6 Appendix B – Related Documents
7 Appendix C – Reference Examples
7.1.1 Example 1: Template To Implement Human Capital Metrics Consortium Benchmark Survey
7.1.2 Example 1: Instance Implementing HCMC Template
7.1.3 Example 2: Template To Implement Individual Performance Measures To Validate an Assessment
7.1.4 Example 2: Instance To Implement Individual Performance Measures To Validate an Assessment
The goal of this project is to develop a simple, yet flexible schema capable of supporting a wide variety of integration scenarios involving the exchange of HR metrics data.
HR management transactions (interviews, hires, enrollments, payroll, terminations, promotions, etc.) result in a variety of source data that can be important for the generation of HR performance measures. The raw transactional data is usually organized or processed before they yield useful information. There are an increasing number of software applications and service providers that aim to discover, organize, and process relevant HR transactional data so that business managers can better understand organizational and individual performance.
Frequently, businesses want to organize their internal data so that they can be compared to benchmarking measures or other normative data. For example, a company might want to examine its employee turnover compared to other organizations within the same industry and / or region as measured by a survey undertaken by a metrics or benchmarking company.
To seamlessly access and compare internal performance data and external measures usually requires the acquisition of data from one or more systems. The HR-XML Consortium’s Metrics Interchange Schema enables these types of data exchanges. Because of the wide variety of performance data and integration scenarios, the HR-XML Consortium’s Metrics Interchange Schema provides a very generalized, flexible structure that usually would be accompanied with an implementer-defined template. The template would indicate how the schema is applied to the given data and integration scenario. Two of many possible scenarios are illustrated in Appendix C – Reference Examples.
The HR-XML Consortium’s Metrics Interchange standard will make it easier to automate the acquisition and transfer of HR metrics data between and among a wide variety of HR solution providers.
Example: The HR-XML Consortium’s Metrics Interchange standard will make it easier for HR research and benchmarking companies and providers of business intelligence tools to opportunistically partner with each other.
Example: The schema also will be helpful to assessment vendors. Providers of assessment services frequently want to acquire on-the-job performance data so that pre-employment assessment results can be validated as statistically relevant predictors of on-the-job performance. Today, such data is typically extracted from performance management systems on an ad hoc basis or the data is manually compiled and then sent to the assessment company in a proprietary format, such as a spreadsheet.
Employers have invested considerable sums into business intelligence (BI) tools and into reporting and human capital management solutions aimed at providing insight into organizational and individual performance. To have a basis against which to compare internal performance, many of the same organizations have invested significant amounts to sponsor the work of third-party research and benchmarking organizations. A flexible interchange mechanism for metrics will help employers maximize their return on both of these investments.
Today, internal measures and external benchmarking data are typically integrated using ad hoc or manual processes. For example, an HR manager might manually take data from a BI or HR reporting tool, copy it into paper or web-based survey questionnaires, wait for the next quarterly or annual survey report to be returned, and then perhaps manually integrate or compare the benchmarks against internal numbers.
If BI and HR solutions were well integrated with benchmarking and survey solution providers, little manual integration of data would be required. Data required for a particular survey could be extracted with little manual intervention and sent directly to the benchmarking organization. Likewise, results might be returned and integrated directly within the BI or HR solution so that internal performance could easily be compared against external measures.
The goal of this project is the development of a flexible, generalized schema for the exchange of metrics data. The usefulness of the schema will likely depend on the quality of templates offered by implementing organizations.
The goal of the project is to develop a format that can be used flexibly to exchange a wide variety of metrics information.
The design approach is to use a single schema to define the format for both Instance Reports and Summary Reports (see Section 1.4, Terminology).
· Developing HR measures or benchmarks. Developing measures or benchmarks for HR performance or determining what metrics are relevant to HR performance are activities outside of the scope of this project.
· Metrics reporting that does not involve interchange between organizations or systems. There are many metrics reporting processes that are not dependent on the interchange of metrics data between systems or entities. For example, there are a variety of hosted, ASP-style HR services where the service provider simply processes and compiles transactional data and presents summary metrics reports back to the customer on a web page accessible by a customer login.
· Internal transfers/compilation of source data. For any organization, the source data from which metrics are compiled are likely to reside in multiple data stores (for example, databases underlying HR systems, data warehouses, payroll systems, recruiting systems, etc). There are a growing number of business intelligence tools designed to collect and mine data from disparate sources. It is possible that the HR-XML Consortium’s Metrics Interchange standard could be useful in enabling some of these transfers of metrics information from distributed source data. However, this specification was not designed to explicitly support these types of transfers.
· Developing templates or implementation guides for specific series of metrics. This work would generally fall to specific MROs (see Section 1.4, Terminology).
The following definitions are useful in describing the scenarios supported by the HR-XML Consortium’s Metrics Interchange specification.
A Metrics Reporting Organization (MRO) is an organization that produces benchmarks, reports, or other normative data from surveys or other research.
A Source Organization is the respondent to an MRO survey or otherwise is the source for data compiled and analyzed by an MRO. The source organization supplies the survey responses or Instance Reports that the MRO compiles and analyzes in preparing its reports.
A Metrics Consumer is an organization that receives, uses, and applies summary metrics information supplied by an MRO or a Metrics Consolidator. A Metrics Consumer in many cases will also be a Source Organization – but this is not always the case.
A Metrics Consolidator is a role taken by a core HR system, hosted solution, HR service provider, or other software package that analyzes and organizes transactional data according to a Metrics Template to produce Instance Reports. The role of the Metrics Consolidator is to apply Metrics Templates in software and/or service offerings so that data can then be extracted according to that template.
This is the set of definitions and guidelines that define content and the format of the metrics to be provided. For example, the Human Capital Metrics Consortium - Recruiting Efficiency Ratio consists of a formula and definitions for formula components. A template also should indicate data constraint and validation information. In other words, the template should indicate for each data component the types of data that would be valid. For example, a metric might require the return of only a positive integer, the return of one of several pre-defined enumerated values, or the return of a text string.
The Instance Report refers to uncompiled data that might be submitted in response to an MRO survey or generated as an extract from the system of a Source Organization by a Metrics Consolidator. An Instance Report would usually pertain to a single Source Organization and would have a time period associated with it.
The Summary Report refers to compiled data provided by an MRO or an HR service provider to a Metrics Consumer. A Summary Report usually would reflect the combined results of many source organizations.
There is a wide range of scenarios that can be supported by the flexible, generalized metrics interchange schema developed by the HR-XML Consortium. The diagram below depicts a typical scenario:
Example: An employer (source organization) handles its human capital management system needs through a hosted or outsourced HCM solution. In the diagram above, the HCM solution would take the role of the Metrics Consolidator.
As part of the agreement between the HCM solution provider and the employer, the HCM solution provider will provide integrated views of benchmarks produced by the MRO Company. The MRO provides the HCM provider a template, which includes the semantics and format for MRO’s benchmarks. The HCM company builds support for those benchmarks within its system. The HCM solution provides views of client data against the MRO’s benchmarks to allow for comparison, gap analysis, and performance assessment. Periodically (or conceivably on a near-real time basis), the HCM company submits instance snapshots to the MRO company.
The MRO compiles the instance results with those of other participating employers. A summary metrics report is sent back to the HCM company. The employer is then able to log into the hosted HCM solution to see the industry-compiled benchmarks against its own data. The HCM systems provider can then build rich, value-added features that allow the employer to compare, perform gap analysis, and identify opportunities and requirements for corrective action.
The HR-XML Consortium’s Metrics Interchange schema includes directly or indirectly a number of re-usable component schemas. These dependencies are presented in the table below:
|
Role |
Name |
|
Include |
IdentifierTypes.xsd |
|
Include |
Organization.xsd |
|
Include |
PhysicalLocation.xsd |
|
Indirect |
ContactMethod.xsd |
|
Indirect |
DateTimeDataTypes.xsd |
|
Indirect |
EntityIdType.xsd |
|
Indirect |
ISOUtilities.xsd |
|
Indirect |
OnlineAddress.xsd |
|
Indirect |
PersonName.xsd |
|
Indirect |
PostalAddress.xsd |
|
Indirect |
TaxonomyTypes.xsd |
|
Indirect |
TelcomNumber.xsd |
|
Indirect |
UserArea.xsd |
|
Indirect |
WorkSite.xsd |
|
Indirect |
xml.xsd (maintained by W3C.org) |
|
Indirect |
xStringPatternExtensionType.xsd |
For detailed information on the above-referenced schemas, see the associated documentation (Appendix B – Related Documents).
The Metrics Interchange Schema uses entire the OrganizationType within its PrincipalRespondentOrganization component. The PrincipalRespondentOrganization component typically would be a client of an MRO (the survey or research company). OrganizationType allows for a very comprehensive description of an Organization. For new clients, the OrganizationType provides a way to pass a complete set of “set-up information,” including tax and legal identifiers, contact information, organizational structure and relationship information, worksite locations, etc. In the case of existing clients that are known and set up on the MRO’s system, the OrganizationType is sufficiently flexible so that just an OrganizationId could be transferred within PrincipalRespondentOrganization.
PhysicalLocation.xsd provides comprehensive and flexible options for identifying and describing a physical location. The Metrics Interchange schema uses a single type (LocationAreaType) from the PhysicalLocation schema.
Location information is
commonly used to classify or qualify other survey or metrics data. The LocationAreaType is a flexible type that can be used to
pass information identifying a country, state or province, municipality, or
privately defined regions, such as “
|
Elements and Attributes [Global types listed alphabetically in following table.] |
ContentModel* |
Definition |
|
/ |
- MetricsInterchangeType - (1/1) |
HR-XML Consortium's Metrics Interchange schema. The schema provides a flexible means for the exchange of metrics data and information about the organization or person to which metrics data pertain. |
|
/ MetricsInterchange/ |
- ReportingPeriodType - S (1/1) |
The period of time for the data reported. |
|
/ MetricsInterchange/ ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains
the (inclusive) date, period, or interval the event becomes active or begins.
|
|
/ MetricsInterchang e/ ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains
the (inclusive) date, period, or interval the event becomes inactive or ends.
|
|
/ MetricsInterchang e/ |
Name - xsd:string - S (0/1) |
Contains the name and description of the particular report or metrics compilation. |
|
/ MetricsInterchange/ ReportDescription/ |
- xsd:string - S (0/1) |
A
descriptive identifier within the given context. |
|
/ MetricsInterchange/ ReportDescription/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ |
Organization
- [see include/import] - S (1/1) |
Information
about the organization that is providing the data. |
|
/ MetricsInterchange/ PrincipalRespondentOrganization/ |
- MetricsAdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ MetricsInterchange/ |
- ReportedMetricsType - S (0/*) |
Contains metrics data with respect to one or more organizations or persons. |
|
/ MetricsInterchange/ ReportedMetrics/ |
OrganizationName - xsd:string - S (0/1) |
An organization about which data is reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- xsd:string - S (0/1) |
The name by which an organization or enterprise is known as established under the laws of a country, state, province or ruling governmental body for the purpose of conducting business transactions. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- EntityIdType - S (0/1) |
Unique identifier for the organization. It may be an internal identifier assigned by the sender. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- RelatedReportedOrganizationType - S (0/1) |
Contains
information identifying another reported organization that is related (For
example, a parent, subsidiary, or division of a reported organization). |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ RelatedReportedOrganization/ |
- xsd:string - S (0/1) |
The name by which an organization or enterprise is known as established under the laws of a country, state, province or ruling governmental body for the purpose of conducting business transactions. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ RelatedReportedOrganization/ |
- EntityIdType - S (0/1) |
Unique identifier for the organization. It may be an internal identifier assigned by the sender. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- xsd:string - C (1/1) |
An
indicator showing that the reported organization is identical to the
responsible organization. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- xsd:string - C (1/1) |
Specifies a relationship between a ReportedOrganization and the PrincipalRespondent organization where those organizations are not the same. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- OrganizationContactType - S (0/*) |
Contains
information to contact a person or entity. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
GeographicalScope - [complexType]
- S (0/1) |
Contains a contextual subset of descriptive information about an organization. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/ |
- LocationAreaType - S (0/1) |
Identifies the relevant geographical area. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/ |
Headcount
- xsd:string - S (0/1) |
Contains information about the size of the organization in terms of total number of employees or in terms of a fiscal measure, such as annual revenue. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
OrganizationSize/ |
- xsd:string - S (0/1) |
The
number of persons working on a full or part-time basis in some capacity by a
legally operating organization or enterprise. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
OrganizationSize/ |
xsd:extension base: xsd:string |
A financial
measure of the size of an organization. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
OrganizationSize/ FiscalSize/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/ |
- DataElementType - S (0/*) |
A
flexible structure for the capture of a specific metric, demographic value,
organizational descriptor, or other reported value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
DataElement/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
DataElement/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
DataElement/ |
- MonetaryValueType - C (1/1) |
Contains a monetary value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors/
DataElement/ |
- xsd:string - C (1/1) |
A value or label of the associated element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ OrganizationDescriptors
/ DataElement/ |
- DataElementType - S (0/*) |
A recursive structure that allows for multi-value, complex metrics or other data to be expressed. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ |
- ReportingDataType - S (1/*) |
Specific data required for reporting purposes. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/ |
- xsd:string - S (0/1) |
A description of the category of data reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/ |
- ReportingPeriodType - S (0/1) |
The period of time for the data reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains the (inclusive) date, period, or interval the
event becomes active or begins. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains
the (inclusive) date, period, or interval the event becomes inactive or ends.
|
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/ |
- DataElementType - S (1/*) |
A
flexible structure for the capture of a specific metric, demographic value,
organizational descriptor, or other reported value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ |
- MonetaryValueType - C (1/1) |
Contains a monetary value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ |
- xsd:string - C (1/1) |
A value or label of the associated element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ |
- DataElementType - S (0/*) |
A recursive structure that allows for multi-value, complex metrics or other data to be expressed. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ DataElementSubType/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ DataElementSubType/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ DataElementSubType/ |
- MonetaryValueType - C (1/1) |
Contains a monetary value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedOrganization/ ReportingData/
DataElement/ DataElementSubType/ |
- xsd:string - C (1/1) |
A value or label of the associated element. |
|
/ MetricsInterchange/ ReportedMetrics/ |
ReportedPersonDetail - [complexType] - S (0/1) |
A person about whom data is reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ |
PersonName - [see include/import] - S (0/1) |
Contains classifying information to identify or describe a person. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/ |
- EntityIdType - S (0/1) |
A unique identifier for a person. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/ |
- ContactMethodType - S (0/*) |
Contains
information to contact a person or entity. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/ |
- DataElementType - S (0/*) |
A
flexible structure for the capture of a specific metric, demographic value,
organizational descriptor, or other reported value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ |
- MonetaryValueType - C (1/1) |
Contains a monetary value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ |
- xsd:string - C (1/1) |
A value or label of the associated element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ |
- DataElementType - S (0/*) |
A recursive structure that allows for multi-value, complex metrics or other data to be expressed. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ DataElementSubType/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ DataElementSubType/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ DataElementSubType/ |
- MonetaryValueType - C (1/1) |
Contains a monetary value. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportedPersonDetail/
DataElement/ DataElementSubType/ |
- xsd:string - C (1/1) |
A value or label of the associated element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ |
- ReportingDataType - S (1/*) |
Specific
data required for reporting purposes. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/ |
- xsd:string - S (0/1) |
A description of the category of data reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/ |
- xsd:string - S (0/1) |
Describes the contextual information relating to a specific element. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/ |
- ReportingPeriodType - S (0/1) |
The period of time for the data reported. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/
ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains the (inclusive) date, period, or interval the
event becomes active or begins. |
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/
ReportingPeriod/ |
- LocalDateType - S (0/1) |
Contains
the (inclusive) date, period, or interval the event becomes inactive or ends.
|
|
/ MetricsInterchange/ ReportedMetrics/
ReportedPerson/ ReportingData/ |
- DataElementType - S (1/*) |
A
flexible structure for the capture of a specific metric, demographic value,
organizational descriptor, or other reported value. |
|
Global types |
ContentModel* |
Definition |
|
/ |
type - xsd:string - |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ [DataElementType] / |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ |
xsd:extension base: xsd:string |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ [MetricsAdditionalDataType] / |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ |
xml:lang - - |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
xsd:extension base: xsd:decimal |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
relationship
- OrganizationRelationshipType - |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ [RelatedReportedOrganizationType] / |
- OrganizationRelationshipType - |
Describes
the nature of the relationship or connection between two elements or
entities. |
|
/ |
ReportedOrganization - xsd:string - C (1/*) |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
ReportingCategory - xsd:string - S (0/1) |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
StartDate - LocalDateType - S (0/1) |
Globally scoped data type. See element or attribute declaration for definition. |
Human resources data, by its very nature, is personal data. The laws of many jurisdictions as well as codes of fair information practice require organizations to handle personal data in a way that protects individuals from loss of privacy.
The data exchange specifications developed by the HR-XML Consortium are designed to be useful across many jurisdictions and within a variety of business contexts. It is not feasible for the HR-XML Consortium to develop specific privacy guidance for every jurisdiction or business context in which the Consortium's specifications might be implemented. When implementing data exchanges using the HR-XML Consortium's data definitions (or, for that matter, using any other type of data exchange mechanism), organizations are advised to examine the privacy protections that may be required under applicable law and codes of fair information practice. Implementers should consult with competent legal counsel on applicable privacy laws.
For information on protecting personal data, general references include: Organization for Economic Cooperation and Development (OECD) Privacy Guidelines (1980); European Union Data Protection Directive (95/46/EC); the Association Computing Machinery Code of Ethics (1992); Canadian Standards Association Model Code for the Protection of Personal Information (1995 – PIPEDA); and U.S.-EU Safe Harbor Principles and FAQs (2000).
|
Date |
Description |
|
2004-01-19 |
Draft submitted for workgroup approval. |
|
2004-01-23 |
Made minor edits based on workgroup review and submitted to CPO/TSC review. |
|
2004-04-28 |
Made edits recommended by TSC/CPO: · GeographicalScope to be of type LocationAreaType and remove extra Area layer. · Change RelationToRespondent to RelationshipToRespondent. · Clarified includes and use of types from Organization.xsd and PhysicalLocation. · Clarified “Summary” and “Instance” reports within Terminology. · Moved Global Element PrincipalRespondentOrganization up in the schema to conform to the style of keeping elements and types from being intermingled within a schema. |
|
2004-07-06 |
An optional attribute xml:lang was added to the root element. |
|
2006-02-28 |
Approved by Membership |
|
Reference |
Link |
|
Contact Method |
|
|
Date/Time Data Types |
http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/DateTimeDataTypes.html |
|
Identifier Types |
http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/IdentifierTypes.html |
|
Organization |
|
|
Person Name |
|
|
Physical Location |
http://ns.hr-xml.org/2_5/HR-XML-2_5/CPO/PhysicalLocation.html |
|
Postal Address |
The HR-XML Consortium’s Metrics Interchange specification does not specify the exact format of metrics templates. The template is the responsibility of the Metrics Reporting Organization to prepare. The template generally would consist of:
The following sections include illustrative examples of what a template might look like.
The example template presented below illustrates how the HR-XML Consortium’s Metrics Interchange specification might be useful in automating the acquisition data for the Human Capital Metrics Consortiums Standard Benchmark Survey. The template describes how data required for this survey instrument should be formatted using the HR-XML Consortium’s Metrics Interchange Specification.
Id refers to the survey question identifier assigned by HCMC
Field Name refers to the question or name of the question or field in the survey instrument.
Data Type refers to the data type or other type of constraints enforced by the survey. This is a compatible, but not necessarily the same data type enforced by the HR-XML Consortium metrics interchange schema. For instance, there are places where the schema might require only a string, but the survey instrument would require one of several pre-defined enumerations.
Required / Optional indicates whether the element is required or optional in the survey instrument.
Description / Markup Instructions includes definitions and instructions for the interface developer. Note that more detailed metrics definitions are contained in a separate document.
Schema contains the node within the HR-XML Consortium’s Metrics Interchange schema where the related data would be captured.
|
Id |
Field Name |
Data Type / Constraints |
Required |
Description / Markup Instructions |
Schema |
|
|
Reporting Period Begin |
Fixed |
Required |
Fixed value assigned by HCMC: 2999-01-01 |
MetricsInterchange / ReportingPeriod / StartDate |
|
|
Reporting Period End |
Fixed |
Required |
Fixed value assigned by HCMC: 2999-21-31 |
MetricsInterchange / ReportingPeriod / EndDate |
|
|
Report Name |
Fixed |
Required |
Fixed value assigned by HCMC: 200_ Recruiting Metrics and Performance Benchmark |
MetricsInterchange / ReportDescription / Name |
|
|
Respondent Organization Name |
String |
Required |
The name of the respondent organization. |
PrincipalRespondentOrganization / Organization / OrganizationName |
|
|
Contact Given Name |
String |
Required |
The given name of the individual to contact regarding report |
PrincipalRespondentOrganization / Organization / ContactName / GivenName |
|
|
Contact Family Name |
String |
Required |
The family name of the individual to contact regarding report |
PrincipalRespondentOrganization / Organization / ContactName / FamilyName |
|
14 |
Country |
2 character string
|
Required |
A two-letter code prescribed by ISO 3166-1, Codes for the representation of names of countries and their subdivisions. |
ReportedOrganization / OrganizationDescriptors / GeographicalScope / Description
|
|
13 |
State / Province |
string |
Required |
A two-letter code for the state
or province. For instance in the US: AK; AL; AR; AS; AZ; CA; CO; CT; DC; DE;
FL; FM; GA; GU; HI; IA; ID; IL; IN; KS; KY; LA; MA; MD; ME; MH; MI; MN; MO;
MP; MS; MT; NC; ND; NE; NH; NJ; NM; NV; NY; OH; OK; OR; PA; PR; PW; RI; SC;
SD; TN; TX; UT; VA; VI; VT; WA; WI; WV; WY. In |
ReportedOrganization / OrganizationDescriptors / GeographicalScope / Area / Description |
|
10 |
Total Employees in Organization |
enumeration |
required |
One of the following six
enumerations: 100 - 999 1,000 - 4,999 5,000 - 9,999 10,000 - 49,999 50,000+ |
ReportedOrganization / OrganizationDescriptors / OrganizationSize / Headcount |
|
7 |
Referred By: |
string |
Optional |
Name of a referring organization. |
ReportedOrganization / OrganizationDescriptors / DataElement |
|
9 |
Reporting for |
enumeration |
required |
One of the following four
enumerations: |
ReportedOrganization / OrganizationDescriptors / DataElement |
|
11 |
Organization Category |
enumeration |
Optional / Item 12, “Organization Category (Other)” must be provided if item 11 is not provided. |
One of the enumerated organization
categories below Agriculture, Fishing Airlines Architecture, Engineering Arts, Entertainment, Recreation Banks, Commercial and Savings Beverages Building Materials, Glass Chemicals Computer & Data Services Computer Software Computers, Office Equipment Construction Consulting Diversified Financials Diversified Outsourcing Services Education, Colleges and Universities Education, Other Services Education, Primary and Secondary Electrical Equipment Electronics Energy Financial Services Food Food and Drug Stores Food Consumer Products Food Production Food Services Forestry/Mining General Merchandisers Government, Local Government, National, Multi-National Government, Province or State Health Care, Hospitals Health Care, Long Term Care Health Care, Nursing and Specialty Services Health Products and Services Hospitality Household and Personal Products Independent Consultant Industrial and Farm Equipment Insurance Library Manufacturing (Durable Goods) Manufacturing (Non-Durable Goods) Media, Internet, Radio, Publishing, Television Metals and Mining Motor Vehicles and Parts Network and Other Communications Equipment Oil and Gas Oil and Gas Equipment, Services Outsourcing Pharmaceutical and Biotech Real Estate Retail Scientific, Photo, Control Equipment Securities Semiconductors and Other Electronic Components Services, Non-Profit Services, Profit Specialty Retailers Telecommunications Tobacco Trading Transportation, Package and Freight Transportation, Passenger Services Transportation, Rail, Ship, Trucking Utilities, Electric and Gas Wholesale |
ReportedOrganization / OrganizationDescriptors / DataElement |
|
12 |
Organization Category (Other) |
string |
Optional / Either item 11, “Organization Category” or item 12, “Organization Category (Other)” must be provided. |
A user-defined string specified where enumerated categories are not sufficient to categorize the reported organization. |
ReportedOrganization / OrganizationDescriptors / DataElement |
|
16.1 |
Positions filled internally: Jan-Dec 200_ |
Integer |
Optional |
Number of positions filled internally by current employees. |
ReportedOrganization / ReportingData / DataElement / DataValue |
|
17.11 |
External New Hires: Total nonexempt: Jan-Dec 200_ |
Integer |
(17.11 and 17.12) OR 17.13 are required. |
Number of nonexempt (i.e., over-time eligible) external new hires. |
ReportedOrganization / ReportingData / DataElement / DataValue |
|
17.12 |
External New Hires: Total exempt: Jan-Dec 200_ |
Integer |
(17.11 and 17.12) OR 17.13 are required. |
Number of exempt external new hires. |
ReportedOrganization / ReportingData / DataElement / DataValue |
|
17.13 |
External New Hires: Total hires: Jan-Dec 200_ |
Integer |
(17.11 and 17.12) OR 17.13 are required. |
Number of external new hires. |
ReportedOrganization / ReportingData / DataElement / DataValue |
|
18.11 |
Compensation Recruited: Average New Hire: Jan-Dec 200_ |
Decimal |
18.11 OR 18.12 is required. |
Average annual starting compensation of external positions filled by staffing operations. For seasonal and part-time hires, this should be the total compensation they would be expected to earn in one year. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
18.12 |
Compensation Required: Total Compensation: Jan-Dec 200_ |
Decimal |
18.11 OR 18.12 is required. |
The sum of the base annual starting compensation of all external positions filled by staffing operations. For seasonal and part-time hires, this should be the total compensation they would be expected to earn in one year. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
19.11 |
Recruiting Costs: Internal: Jan-Dec 200_ |
Decimal |
(19.11 and 19.12) OR 19:13 are required. |
These are your fixed or "overhead" expenses, comprising everything from recruiter compensation and benefits to office and technology expenses. These operating expenses are defined as virtually all costs required to maintain a staffing operation. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
19.12 |
Recruiting Costs: External: Jan-Dec 200_ |
Decimal |
(19.11 and 19.12) OR 19:13 are required. |
These expenses are also referred to as sourcing costs and include advertising and agency and search fees, as well the costs associated with Internet postings. External recruiting costs include virtually all expenses involved in identifying and recruiting candidates. Sourcing costs are usually incurred for a specific position or positions, but they can also include general initiatives such as employer branding. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
19.13 |
Recruiting Costs: Total Costs: Jan-Dec 200_ |
Decimal |
(19.11 and 19.12) OR 19:13 are required. |
Total of internal and external recruiting costs. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
20.1 |
Cost-Per-Hire: Jan-Dec 200_ |
Decimal |
Optional |
Total recruiting costs divided by total positions recruited. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
21.1 |
Recruiting Efficiency Index: Jan-Dec 200_ |
Decimal |
Optional |
The Human Capital Metrics Consortium Recruiting Efficiency Ratio takes into account differences of geography, industry and job level by shifting its focus from numbers of recruits to compensation of recruits. The equation is simple: Total Recruiting Costs divided by Total Compensation Recruited. |
ReportedOrganization / ReportingData / DataElement / DataValue |
|
22.1 |
Signing Bonuses: Jan-Dec 200_ |
Decimal |
Optional |
Total amount of signing bonuses. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
23.1 |
Travel, Relocation, and Visa Expenses: Jan-Dec 200_ |
Decimal |
Optional |
Total amount of travel, relocation, and visa hiring expenses. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
|
25.1 |
Average Time to Start: Jan-Dec 200_ |
Integer |
Optional |
Average time to start. |
ReportedOrganization / ReportingData / DataElement / MonetaryValue |
An XML instance implementing the template above can be found at this location:
http://ns.hr-xml.org/2_5/HR-XML-2_5/Metrics/ExampleOfOrganizationMetrics.xml
The example below illustrates how the HR-XML Consortium’s Metrics Interchange specification might be useful in automating the acquisition and transfer of individual performance data by an assessment vendor.
Businesses rely on assessments to measure numerous individual and organizational characteristics. The assessment data of interest to businesses can be granular (responses to a single survey, test, or assessment instrument) or a statistical analysis of aggregated results. Today, the acquisition and transfer of assessment data typically is a lengthy and manual process.
In the example below, a vendor of assessment services wants to acquire data related to the performance of the workers in a call center who were the subjects of pre-employment assessments by the vendor. By obtaining and analyzing the performance data, the vendor can determine and demonstrate to the client that its assessments are valid predictors of on-the-job performance. Before automation the process would consist of the following steps:
1) Applicants undergo a pre-employment assessment
2) On a monthly basis reports are generated that report applicant assessment results (Test Score Data)
3) Assessment vendor receives a file from the client containing employee call center performance data (typically as a spreadsheet or other proprietary file format).
4) The assessment results and metrics data files are combined into a single report using a key field such as the SSN. (Combined Data)
5) Statistical analysis is performed on the combined data file to produce a validation report containing graphs derived from the analysis. (Graphs)
Having an agreed upon format for receiving metrics data makes it easier to automate the receipt of metrics data by the assessment vendor from the client. Instead of using a spreadsheet or proprietary format to receive call center performance data (step 3), a web service using HR-XML Metrics Interchange schema might be used to acquire the required performance data directly from the employer. The template below illustrates how the HR-XML Consortium Metrics schema may be useful in acquiring metrics data.
This is one possible scenario. This particular template pertains only to metrics for individual employee job performance. Other common scenarios related to assessments might require the use of both group-level and individual metrics.
Id refers to the survey question identifier assigned by the assessment company
Field Name refers to the question or name of the question or field in the survey instrument.
Data Type refers to the data type or other type of constraints enforced by the survey. This is a compatible, but not necessarily the same data type enforced by the HR-XML Consortium metrics interchange schema. For instance, there are places where the schema might require only a string, but the survey instrument would require one of several pre-defined enumerations.
Required / Optional indicates whether the element is required or optional in the survey instrument.
Description / Markup Instructions includes definitions and instructions for the interface developer. Note that more detailed metrics definitions are contained in a separate document.
Schema contains the node within the HR-XML Consortium’s Metrics Interchange schema where the related data would be captured.
|
Id |
Field Name |
Data Type / Constraints |
Required |
Description / Markup Instructions |
Schema |
|
|
Metric Month |
Local Date: |
Required |
Beginning date of month for which performance data is reported. |
MetricsInterchange / ReportingPeriod / StartDate |
|
|
Metric Month |
Local Date: |
Required |
End date of month for which performance data is reported. |
MetricsInterchange / ReportingPeriod / EndDate |
|
|
Report Name |
Fixed String |
Required |
Value is “Post-Assessment Client Solution.” |
ConsolidatedMetrics / ReportDescription / Name |
|
|
Report Description |
String |
Optional |
Value is “Monthly report (June 2003) from client showing applicant performance metrics. This report is used in validating assessment instrument as predictor of on-the-job performance.” |
ConsolidatedMetrics / ReportDescription / Description |
|
|
Client Id |
String |
Required |
A valid client |
ConsolidatedMetrics / PrincipalRespondentOrganization / Organization / OrganizationId / IdValue |
|
|
IdOwner |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ConsolidatedMetrics / PrincipalRespondentOrganization / Organization / OrganizationId / IdValue @ idOwner |
|
|
First Name |
String |
Required |
Given name. |
ReportedMetrics / ReportedPerson / PersonDemographicData / PersonName / GivenName |
|
|
Last Name |
String |
Required |
Family name. |
ReportedMetrics / ReportedPerson / PersonDemographicData / PersonName / FamilyName |
|
|
SSN |
String |
Required |
Fixed value: “SSN”. Attribute identifying that the PersonId is a social security number |
ReportedMetrics / ReportedPerson / PersonDemographicData PersonId @ idOwner |
|
|
SSN Value |
A valid social security
number: |
Required |
The assessment subject’s Social Security Number. |
ReportedMetrics / ReportedPerson / PersonDemographicData PersonId / IdValue |
|
1.1 |
Identifier for “Division” Data Element |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Division” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id @ IdOwner |
|
|
“Division” Data Element Description |
String |
Optional |
Fixed value of “Division” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Description |
|
|
“Division” Data Element Value |
String |
Required |
Valid values include: NBP, P4F, P4J, P4P, P4R, P4W, P4X, P4Y, P5A, P5B, P5C, P5D, P5J, P5K, P5L, P5M, P5U, P5W, P5X, P6A, PX5, PYA, PYB, PYC, PYG, PYI, PYJ, PYM, PYP, PYQ, PYT, Q1N, Q1P, Q1Q, Q1R, Q1T, Q1U, Q1V, Q1W, Q1Y, Q1Z, Q2A, Q2B, Q2D, Q2E, Q2N, Q2Q, Q2R, Q2T, Q3Q, Q3R, Q3T, Q3W, Q3X, Q4B, Q4C, Q4E, Q4F, Q4G, Q4I, Q4J, Q4K, Q4L, Q4P, Q4Q, Q4R, Q5I, Q5J, Q5L, Q5M, Q5P, Q5R, Q5T, Q5U, Q5V, Q5W, Q5X, Q5Y, Q5Z, Q6A, Q6B, Q7G, Q7H, QB1, QB3, QB5, QB6, QB7, QB9, QBB, QBC, QBD, QBE, QBF, QBI, QBK, QBM, QBX, QBY, QC1, QC2, QC4, QC5, QC8, QCA, QCU, QCV, QCW, QDA, QDB, QDC, QDD, QDE, QEU, QH4, QH5, QH6, QH7, QHZ, QIA, QIC, QID, QIE, QIF, QII, QIM, QIN, QIP, QIQ, QIS, QIX, QL3, QL6, QL8, QL9, QLI, QLK, QLM, QLN, QLZ, QMB, QMC, QNR, QR6, QR7, QR8, QS1, QS2, QS4, QS5, QS6, QS7, QS8, QS9, QSA, QSB, QSC, QSD, QSE, QSG, QSI, QSJ, QSN, QSQ, QSR, QSS, QSU, QSW, QSX, QSZ, QT9, QTR, QTT, QTU, QTX, QTY, QUB, QUC, QUD, QUF, QUH, QUJ, QUK, QUL, QUM, QUN, QUW, QUX, QVH, R5P, R5Q, R5T, R5U, R5X, R5Y, R5Z, R6A, RH1, RH2, RH3, RH4, RH5, RH9, RIB, RJ2, RJ3, RJ8, RJ9, RJU, RJW, RJY, RJZ, RKD, RKE, RKF, RKG, RKH, RKK, RKL, RKM, RKN, RLL, RLM, RLN, RLP, RLQ, RLR, and RLS. |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / DataValue |
|
1.2 |
Identifier for “Hire Date” Data Element |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Hire Date” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id @ IdOwner |
|
|
“Hire Date” Data Element Description |
String |
Optional |
Fixed value of “Hire Date” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Description |
|
|
“Hire Date” Data Element Value |
Local Date: |
Required |
The employee’s hire date. |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / DataValue |
|
1.3 |
Identifier for “State” Data Element |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id / IdValue |
|
|
Identifier Owner for “State” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Id @ IdOwner |
|
|
“State” Data Element Description |
String |
Optional |
Fixed value of “State” |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / Description |
|
|
“State” Data Element Value |
String |
Required |
A two-letter code for the
state or province in which the employee works. For instance in the US: AK;
AL; AR; AS; AZ; CA; CO; CT; DC; DE; FL; FM; GA; GU; HI; IA; ID; IL; IN; KS;
KY; LA; MA; MD; ME; MH; MI; MN; MO; MP; MS; MT; NC; ND; NE; NH; NJ; NM; NV;
NY; OH; OK; OR; PA; PR; PW; RI; SC; SD; TN; TX; UT; VA; VI; VT; WA; WI; WV;
WY. In |
ReportedMetrics / ReportedPerson / PersonDemographicData / DataElement / DataValue |
|
2.1 |
Identifier for “Promises to Pay per call” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue
|
|
|
Identifier Owner for “Promises to Pay per call” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Promises to Pay per call” Data Element Description |
String |
Optional |
Fixed value of “Promises to Pay per call” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Promises to Pay per call” Data Element Value |
Decimal |
Required |
Percentage of calls handled by the employee in which there were promises to pay. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
|
2.2 |
Identifier for “Promises kept per call” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue
|
|
|
Identifier Owner for “Promises to Pay per call” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Promises to Pay per call” Data Element Description |
String |
Optional |
Fixed value of “Promises kept per call” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Promises kept per call” Data Element Value |
Decimal |
Required |
Percentage of promises kept per call. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
|
2.3 |
Identifier for “Dollars collected Per operating hour” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Dollars collected Per operating hour” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Dollars collected Per operating hour” Data Element Description |
String |
Optional |
Fixed value of “Dollars collected Per operating hour” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Dollars collected Per operating hour” Data Element Value |
Decimal |
Required |
Percentage of promises kept per call. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
|
2.4 |
Identifier for “Collection per person percentage” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Collection per person percentage” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Collection per person percentage” Data Element Description |
String |
Optional |
Fixed value of “Collection per person percentage” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Collection per person percentage” Data Element Value |
Decimal |
Required |
Collection per person percentage. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
|
2.5 |
Identifier for “Fee waived percentage.” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Fee waived percentage” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Fee waived percentage” Data Element Description |
String |
Optional |
Fixed value of “Fee waived percentage” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Fee waived percentage” Data Element Value |
Decimal |
Required |
Fee waived percentage. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
|
2.6 |
Identifier for “Utilization percentage.” |
Decimal |
Required |
Assessment Vendor identifier for the data element. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id / IdValue |
|
|
Identifier Owner for “Fee waived percentage” Data Element |
String |
Optional |
Fixed value of “Acme Assessment Co. Ltd. Inc.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Id @ idOwner |
|
|
“Fee waived percentage” Data Element Description |
String |
Optional |
Fixed value of “Fee waived percentage.” |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / Description |
|
|
“Fee waived percentage” Data Element Value |
Decimal |
Required |
Fee waived percentage. |
ReportedMetrics / ReportedPerson / ReportingData / DataElement / DataValue |
An XML instance implementing the template above can be found at this location:
http://ns.hr-xml.org/2_5/HR-XML-2_5/Metrics/ExampleOfIndividualMetrics.xml
Complex Metrics Example
In the MetricsInterchange schema, DataElement contains a DataElementSubType, which is a recursive structure that allows multi-value or complex metrics. The example below illustrates how it can be use.
The
metric in this example is “time to start”. Time to start is
calculated as “total days to start” divided by “total
hires.” In the example below, “total days” and “total
hires” are broken out using DataElement. These
numbers are broken down further by internal and external hires using the DataElementSubType.
<?xml version="1.0"
encoding="UTF-8"?>
<MetricsInterchange xmlns="http://ns.hr-xml.org/2007-04-15" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.hr-xml.org/2007-04-15 MetricsInterchange.xsd">
<ReportingPeriod>
<StartDate>2001-01-01</StartDate>
<EndDate>2001-12-31</EndDate>
</ReportingPeriod>
<ReportDescription>
<Name>Time To Start - Total</Name>
<Description>Show the average number of calendar days between the receipt of a requisition and the data a new hire reports for work</Description>
</ReportDescription>
<PrincipalRespondentOrganization>
<Organization>
<OrganizationName>Acme Corporation</OrganizationName>
</Organization>
</PrincipalRespondentOrganization>
<ReportedMetrics>
<ReportedOrganization>
<IsRespondentOrganization>true</IsRespondentOrganization>
<OrganizationDescriptors/>
<ReportingData>
<ReportingCategory>Staffing and Hiring</ReportingCategory>
<ReportingPeriod>
<StartDate>2001-01-01</StartDate>
<EndDate>2001-12-31</EndDate>
</ReportingPeriod>
<DataElement type="Total Hires">
<Description>Total number of employees hired or internal transfers within the period</Description>
<DataValue>23</DataValue>
<DataElementSubType type="External Hires">
<Description>Total number of external hires</Description>
<DataValue>20</DataValue>
</DataElementSubType>
<DataElementSubType type="Internall Hires">
<Description>Total number of internal hires</Description>
<DataValue>3</DataValue>
</DataElementSubType>
</DataElement>
<DataElement type="Total Days To Start">
<Description>Total number of days between job posting approval and date employees start</Description>
<DataValue>1455</DataValue>
<DataElementSubType type="External Hires">
<Description>Total number of days to start for external hires</Description>
<DataValue>1320</DataValue>
</DataElementSubType>
<DataElementSubType type="Internall Hires">
<Description>Total number of days to start for internal hires</Description>
<DataValue>135</DataValue>
</DataElementSubType>
</DataElement>
</ReportingData>
</ReportedOrganization>
</ReportedMetrics>
</MetricsInterchange>


Durmush Kartcı
About
Skills
Experiences
Projects
Contact
Join our Discord Server
Skills
HTML5 & CSS
%60
Java & Python
%60
Chess
%60


地址管理
新建收货地址
[#list receivers as receiver]
${receiver.phone}
${receiver.consignee}
${receiver.areaName}${receiver.address}
编辑
删除
[/#list]


drawdot
Syntax
drawdot (x, y, Color : int)
Description
The drawdot procedure is used to color the dot (pixel) at
location (x, y) using the specified Color.
Example
This program randomly draws dots with random colors. The maxx,
maxy and maxcolor functions give the maximum x, y and
color values.
setscreen ("graphics")
var x, y, c : int
loop
randint (x, 0, maxx) % Random x
randint (y, 0, maxy) % Random y
randint (c, 0, maxcolor) % Random color
drawdot (x, y, c)
end loop
Details
The screen should be in a "graphics" mode. If the screen is
not in a "graphics" mode, it will automatically be set to
"graphics" mode. See setscreen for details.
Example
This program draws a line of dots that bounce off the sides of the
screen. It also demonstrates that you can use real coordinates to
store position (x, y), as long as you convert the
coordinates to int values using round in the
drawdot call.
var x, y : real
var dx, dy : real
var clr : int := 1
x := Rand.Int (1, maxx - 1)
y := Rand.Int (1, maxy - 1)
dx := Rand.Real - 0.5
dy := Rand.Real - 0.5
loop
drawdot (round (x), round (y), clr)
clr := (clr + 1) mod maxcolor
x := x + dx
y := y + dy
if x <= 0 or x >= maxx then
dx := -dx
end if
if y <= 0 or y >= maxy then
dy := -dy
end if
end loop
See also
setscreen,
maxx,
maxy and the various
draw
procedures.


WELCOME ,APPOINTED FOR TODAY ARE :
License no: Hospital
MR. ROY
18/09/2020Details
MRS. SEN
18/09/2020Details
MR. SHARMA
18/09/2020Details
MRS. GUPTA
18/09/2020Details
MR. SINGH
18/09/2020Details
MRS. KUMAR
18/09/2020Details
MR. KUMAR
18/09/2020Details


file_put_contents
(PHP 5, PHP 7)
file_put_contents — 将一个字符串写入文件
说明
int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [,
resource $context ]] )
和依次调用 fopen()，fwrite() 以及 fclose() 功能一样。
If filename does not exist, the file is created. Otherwise, the existing file
is overwritten, unless the FILE_APPEND flag is set.
参数
filename
要被写入数据的文件名。
data
要写入的数据。类型可以是 string，array 或者是 stream 资源（如上面所说的那样
）。
如果 data 指定为 stream 资源，这里 stream 中所保存的缓存数据将被写入到指定
文件中，这种用法就相似于使用 stream_copy_to_stream() 函数。
参数 data 可以是数组（但不能为多维数组），这就相当于 file_put_contents
($filename, join('', $array))。
flags
flags 的值可以是以下 flag 使用 OR (|) 运算符进行的组合。
Available flags
Flag 描述
FILE_USE_INCLUDE_PATH 在 include 目录里搜索 filename。更多信息可参见
include_path。
FILE_APPEND 如果文件 filename 已经存在，追加数据而不是覆盖。
LOCK_EX 在写入时获得一个独占锁。
context
一个 context 资源。
返回值
该函数将返回写入到文件内数据的字节数，失败时返回FALSE
Warning
此函数可能返回布尔值 FALSE，但也可能返回等同于 FALSE 的非布尔值。请阅读布尔类型
章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。
范例
Example #1 Simple usage example
Example #2 Using flags
更新日志
版本 说明
5.0.0 Added context support
5.1.0 添加了对 LOCK_EX 的支持和 data 参数处理 stream 资源的功能。
注释
Note: 此函数可安全用于二进制对象。
Tip
如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见
fopen()。各种 wapper 的不同功能请参见支持的协议和封装协议，注意其用法及其可提供
的预定义变量。
参见
• fopen() - 打开文件或者 URL
• fwrite() - 写入文件（可安全用于二进制文件）
• file_get_contents() - 将整个文件读入一个字符串
• stream_context_create() - 创建资源流上下文
User Contributed Notes 29 notes
===============================================================================
File put contents fails if you try to put a file in a directory that doesn't
exist. This creates the directory.
===============================================================================
It should be obvious that this should only be used if you're making one write,
if you are writing multiple times to the same file you should handle it
yourself with fopen and fwrite, the fclose when you are done writing.
Benchmark below:
file_put_contents() for 1,000,000 writes - average of 3 benchmarks:
real 0m3.932s
user 0m2.487s
sys 0m1.437s
fopen() fwrite() for 1,000,000 writes, fclose() - average of 3 benchmarks:
real 0m2.265s
user 0m1.819s
sys 0m0.445s
===============================================================================
Please note that when saving using an FTP host, an additional stream context
must be passed through telling PHP to overwrite the file.
array('overwrite' => true));
$stream = stream_context_create($options);
/* and finally, put the contents */
file_put_contents($hostname, $content, 0, $stream);
?>
===============================================================================
Calling file_put_contents within a destructor will cause the file to be written
in SERVER_ROOT...
===============================================================================
file_put_contents() will cause concurrency problems - that is, it doesn't write
files atomically (in a single operation), which sometimes means that one php
script will be able to, for example, read a file before another script is done
writing that file completely.
The following function was derived from a function in Smarty (http://
smarty.php.net) which uses rename() to replace the file - rename() is atomic on
Linux.
On Windows, rename() is not currently atomic, but should be in the next
release. Until then, this function, if used on Windows, will fall back on
unlink() and rename(), which is still not atomic...
===============================================================================
file_put_contents does not issue an error message if file name is incorrect(for
example has improper symbols on the end of it /n,/t)
that is why use trim() for file name.
$name=trim($name);
file_put_contents($name,$content);
===============================================================================
File put contents fails if you try to put a file in a directory that doesn't
exist. This function creates the directory.
i have updated code of "TrentTompkins at gmail dot com". thanks
file name including folder.
* example :: /path/to/file/filename.ext or filename.ext
* @param string $data
The data to write.
*
* @param int $flags same flags used for file_put_contents.
* more info: http://php.net/manual/en/function.file-put-contents.php
* @return bool TRUE file created succesfully FALSE failed to
create file.
*/
function file_force_contents($filename, $data, $flags = 0){
if(!is_dir(dirname($filename)))
mkdir(dirname($filename).'/', 0777, TRUE);
return file_put_contents($filename, $data,$flags);
}
// usage
file_force_contents('test1.txt','test1 content'); // test1.txt created
file_force_contents('test2/test2.txt','test2 content');
// test2/test2.txt created "test2" folder.
file_force_contents('~/test3/test3.txt','test3 content');
// /path/to/user/directory/test3/test3.txt created "test3" folder in user
directory (check on linux "ll ~/ | grep test3").
?>
===============================================================================
NOTE : file_put_contents doesn't add a valid BOM while creating the file
===============================================================================
This should also handle $filename from other than root and also $filename
without path.
function file_force_contents($filename, $data, $per = 0755, $flags = 0) {
$fn = "";
if(substr($filename, 0, 1) === "/") $fn .= "/";
$parts = explode("/", $filename);
$file = array_pop($parts);
foreach($parts as $part) {
if(!is_dir($fn .= "$part")) mkdir($fn, $per, true);
$fn .= "/";
}
file_put_contents($fn.$file, $data, $flags);
}
===============================================================================
I had some troubles using file_put_contents with an absolute but no
canonicalized path (eg. w:/htdocs/pri/../test/log.txt): on windows environment
php was unable to create the file also using the realpath function .
I had to use fopen and frwite functions to write the data.
===============================================================================
I wrote this script implementing the file_put_contents() and file_get_contents
() functions to be compatible with both php4.* and php 5.*. It is a PHP Command
line interface script which searches and replaces a specific word recursively
through all files in the supplied directory hierarchy.
Usage from a Linux command line: ./scriptname specifieddirectory searchString
replaceString
#!/usr/bin/php
===============================================================================
file_put_contents() strips the last line ending
If you really want an extra line ending at the end of a file when writing with
file_put_contents(), you must append an extra PHP_EOL to the end of the line as
follows.
You can see that when you print $contents you get two extra line endings, but
if you view the file newfile.txt, you only get one.
===============================================================================
To upload file from your localhost to any FTP server.
pease note 'ftp_chdir' has been used instead of putting direct remote file
path....in ftp_put ...remoth file should be only file name
===============================================================================
There is a better way. www.php.net/touch
Since you're not adding anything to the file,
===============================================================================
This functionality is now implemented in the PEAR package PHP_Compat.
More information about using this function without upgrading your version of
PHP can be found on the below link:
http://pear.php.net/package/PHP_Compat
===============================================================================
As to the previous user note, it would be wise to include that code within a
conditional statement, as to prevent re-defining file_put_contents and the
FILE_APPEND constant in PHP 5:
Also, if the file could not be accessed for writing, the function should return
boolean false, not 0. An error is different from 0 bytes written, in this case.
===============================================================================
It's important to understand that LOCK_EX will not prevent reading the file
unless you also explicitly acquire a read lock (shared locked) with the PHP
'flock' function.
i.e. in concurrent scenarios file_get_contents may return empty if you don't
wrap it like this:
If you have code that does a file_get_contents on a file, changes the string,
then re-saves using file_put_contents, you better be sure to do this correctly
or your file will randomly wipe itself out.
===============================================================================
if path to the file not exist function file_put_contents can't create it. This
simple function make it on UNIX-based and Windows servers.
===============================================================================
I made a ftp_put_contents function.
hope you enjoy.
";
die();
}
}
//Create local file in temp dir
if (!file_put_contents(str_replace("//", "/", $cfg_temp_folder.
$fpc_file_name), $fpc_content)) {
echo "Unable to generate the file in the temporary location - ".
str_replace("//", "/", $cfg_temp_folder.$fpc_file_name).". ";
die();
}
//Connection to the FTP Server
$fpc_ftp_conn = ftp_connect("$cfg_ftp_server");
//Check connection
if (!$fpc_ftp_conn) {
echo "Could not connect to server $cfg_ftp_server. ";
die();
}
else {
// login
// check username and password
if (!ftp_login($fpc_ftp_conn, "$cfg_user", "$cfg_pass")) {
echo "User or password. ";
die();
}
else {
//Document Root
if (!ftp_chdir($fpc_ftp_conn, $cfg_document_root)) {
echo "Error to set Document Root. ";
die();
}
//Check if there are folders to create
if ($cotains_slash) {
//Check if have folders and is not just the file name
if (count($fpc_path_and_name_array) > 1) {
//Remove last array
$fpc_remove_last_array = array_pop($fpc_path_and_name_array
);
//Checks if there slashs on the path
if (substr($fpc_path_and_name,0,1) == "/") {
$fpc_remove_first_array = array_shift(
$fpc_path_and_name_array);
}
//Create each folder on ftp
foreach ($fpc_path_and_name_array as $fpc_ftp_path) {
if (!@ftp_chdir($fpc_ftp_conn, $fpc_ftp_path)) {
if (!ftp_mkdir($fpc_ftp_conn, $fpc_ftp_path)) {
echo "Error creating directory $fpc_ftp_path.
";
}
else {
if (!ftp_chdir($fpc_ftp_conn, $fpc_ftp_path)) {
echo "Error go to the directory
$fpc_ftp_path. ";
}
}
}
}
}
else {
}
}
//Check upload file
if (!ftp_put($fpc_ftp_conn, $fpc_file_name, str_replace("//", "/",
$cfg_temp_folder.$fpc_file_name), FTP_ASCII)) {
echo "File upload $fpc_path_and_name failed! ";
die();
}
else {
if (!unlink(str_replace("//", "/", $cfg_temp_folder.
$fpc_file_name))) {
echo "Error deleting temporary file. ";
die();
}
else {
echo "File upload $cfg_site_link".str_replace("//", "/", "/
$fpc_path_and_name")." successfully performed. ";
}
}
//Close connection to FTP server
ftp_close($fpc_ftp_conn);
}
}
}
#Sample
$content_file = "
Title
Test
";
ftp_put_contents("test.php", $content_file);
?>
===============================================================================
re: moura dot kadu at gmail dot com
why not ? file_put_contents('ftp://user:pass@server/path/to/file',$data);
===============================================================================
It's worth noting that you must make sure to use the correct path when working
with this function. I was using it to help with logging in an error handler and
sometimes it would work - while other times it wouldn't. In the end it was
because sometimes it was called from different paths resulting in a failure to
write to the log file.
__DIR__ is your friend.
===============================================================================
I use file_put_contents() as a method of very simple hit counters. These are
two different examples of extremely simple hit counters, put on one line of
code, each.
Keep in mind that they're not all that efficient. You must have a file called
counter.txt with the initial value of 0.
For a text hit counter:
Or a graphic hit counter:
";
?>
===============================================================================
I use the following code to create a rudimentary text editor. It's not fancy,
but then it doesn't have to be. You could easily add a parameter to specify a
file to edit; I have not done so to avoid the potential security headaches.
There are still obvious security holes here, but for most applications it
should be reasonably safe if implemented for brief periods in a
counterintuitive spot. (Nobody says you have to make a PHP file for that
purpose; you can tack it on anywhere, so long as it is at the beginning of a
file.)
Editing...
');
}
?>
Then simply browse to hxxp://www.example.com/{$this_file}?{$random1}=
{$random2}, with the appropriate values substituted for each bracketed
variable. Please note that this code assumes the target file to be world
writable (-rw-rw-rw- or 666) and will fail to save properly without error if it
is not.
Once again, this is by no means secure or permanent, but as a quick fix for
brief edits to noncritical files it should be sufficient, and its small size is
a definite bonus.
===============================================================================
I suggest to expand file_force_contents() function of TrentTompkins at gmail
dot com by adding verification if patch is like: "../foo/bar/file"
if (strpos($dir, "../") === 0)
$dir = str_replace("..", substr(__DIR__, 0, strrpos(__DIR__, "/")), $dir);
===============================================================================
Log custom or error messages to a file.
file=$file;
$this->writeFlag=$writeFlag;
$this->endRow=$endRow;
}
public function AddRow($content="",$newLines=1){
for ($m=0;$m<$newLines;$m++)
{
$newRow .= $this->endRow;
}
$this->content .= $content . $newRow;
}
public function Commit(){
return file_put_contents($this->file,$this->content,$this->
writeFlag);
}
public function LogError($error,$newLines=1)
{
if ($error!=""){
$this->AddRow($error,$newLines);
echo $error;
}
}
}
$logFileDirectoryAndName="/yourDirectory/yourFileName.xxx";
$logger = new Logger($logFileDirectoryAndName);
$logger->AddRow("Your Log Message");
#log a system error and echo a message
$logger->LogError(mysql_error($conn));
$logger->Commit();
?>
===============================================================================
In reply to the previous note:
If you want to emulate this function in PHP4, you need to return the bytes
written as well as support for arrays, flags.
I can only figure out the FILE_APPEND flag and array support. If I could figure
out "resource context" and the other flags, I would include those too.
define('FILE_APPEND', 1);
function file_put_contents($n, $d, $flag = false) {
$mode = ($flag == FILE_APPEND || strtoupper($flag) == 'FILE_APPEND') ? 'a'
: 'w';
$f = @fopen($n, $mode);
if ($f === false) {
return 0;
} else {
if (is_array($d)) $d = implode($d);
$bytes_written = fwrite($f, $d);
fclose($f);
return $bytes_written;
}
}
?>
===============================================================================
NOTE : file_put_contents create files UTF-8
===============================================================================
This is example, how to save Error Array into simple log file
===============================================================================
To clear up what was said by pvenegas+php at gmail dot com on 11-Oct-2005
08:13, file_put_contents() will replace the file by default. Here's the
complete set of rules this function follows when accessing a file:
1. Was FILE_USE_INCUDE_PATH passed in the call? If so, check the include path
for an existing copy of *filename*.
2. Does the file already exist? If not, first create it in the current
working directory. Either way, open the file.
3. Was LOCK_EX passed in the call? If so, lock the file.
4. Was the function called with FILE_APPEND? If not, clear the file's
contents. Otherwise, move to the end of the file.
5. Write *data* into the file.
6. Close the file and release any locks.
If you don't want to completely replace the contents of the file you're writing
to, be sure to use FILE_APPEND (same as fopen() with 'a') in the *flags*. If
you don't, whatever used to be there will be gone (fopen() with 'w').
Hope that helps someone (and that it makes sense ^^)!
- Sendoshin


| 1 | package fr.sii.ogham.core.builder.retry; | |
| 2 | ||
| 3 | import fr.sii.ogham.core.builder.Builder; | |
| 4 | import fr.sii.ogham.core.retry.RetryStrategy; | |
| 5 | import fr.sii.ogham.core.retry.RetryStrategyProvider; | |
| 6 | ||
| 7 | /** | |
| 8 | * A wrapper that references a {@link RetryStrategy} builder to provide a new | |
| 9 | * {@link RetryStrategy} instance every time the {@link #provide()} method is | |
| 10 | * called. The builder will then simply create and configure the | |
| 11 | * {@link RetryStrategy} instance. | |
| 12 | * | |
| 13 | * @author Aurélien Baudet | |
| 14 | * | |
| 15 | */ | |
| 16 | public class BuilderToRetryStrategyProviderBridge implements RetryStrategyProvider { | |
| 17 | private final Builder<RetryStrategy> delegate; | |
| 18 | ||
| 19 | public BuilderToRetryStrategyProviderBridge(Builder<RetryStrategy> delegate) { | |
| 20 | super(); | |
| 21 | this.delegate = delegate; | |
| 22 | } | |
| 23 | ||
| 24 | @Override | |
| 25 | public RetryStrategy provide() { | |
| 26 |
3
1. provide : All methods instructions replaced by: return null; → NO_COVERAGE 2. provide : All methods instructions replaced by: return null; → SURVIVED 3. provide : All methods instructions replaced by: return null; → SURVIVED |
return delegate.build(); |
| 27 | } | |
| 28 | ||
| 29 | } | |
Mutations | ||
| 26 |
1.1 2.2 3.3 |


Early access to The Well-Grounded Java Developer, Second Edition (with @kittylyst and @karianna) is on
@manning's Deal of the Day today. 📗
If you've been thinking to pick it up and sharpen your JVM skills, now's a great time to do it! 💰http://mng.bz/WrEx #java #jvm
12/3/2021, 12:12:20 AM
Favs: 15
Retweets: 8
link


Sunday, November 2, 2014
It is active participation and videos like the one on DBC's website and Sheereef's Fireside Chat that leave the viewer feeling like the school read your mind, your fears, doubts, and goals and can address them. It is transparent and honest with what you will be experiencing, but it's not like saying "Give me your money. You got yourself into this, now fend for yourself!" like most training schools. I know I will struggle for a long time, but I also know they are there to help us.
I did a lot of research (blogs, articles, Quora, Tumblr, contacted people on LinkedIn, info sessions, etc) on the various bootcamps in San Francisco because I was so nervous about embarking something like this. I chose DBC because I felt like they could relate to me the most. The other bootcamps were great, but nothing really clicked until I visited DBC for a tour.
I was so nervous the week before Phase 0 started that I almost talked myself out of starting this cohort start date. However, it wasn't until week 1's assignments did this nervousness turn into excitement. I don't expect to love everything about web development, but I am surprised how much I enjoyed the assignments that were given us. Time flew and not once did I get blurry-eyed and yawn with desperate boredom. Haha granted it is probably the easiest unit of the curriculum....
This kind of fast-paced intensive learning is something I thrived on in college. I mean, I think I would have gained a lot more if I were the ideal student that my mom had hoped for: went to class everyday, diligently took notes, participated in discussion, studied in advanced, and aced all my tests. But no.Instead, I would cram two days before the exam, run on four hours or less of sleep, study my notes at every stoplight (dangerous), every bathroom break (ew), etc. However, now that I am older and more mature, I'd like to think I have more discipline and desire to be a student who cares about their learning.
I loved the adrenaline and sense of urge in cramming in college and I am curious to see how I will do at DBC. The only thing is... I watched Kara Cara (sp?), this DBC grad who rapped her reflections on Youtube (she's my pseudo idol) and it left an impression that it is common for people to kinda break down, cry, doubt themselves, and be on this emotional roller coaster. That is the part that makes me nervous. Because I am a crier. I mean like, I won't cry in public and cause an awkward fuss, that's not my thing, but I am the type who cries at home during sad puppy commercials and lonely grandmas who don't get any Hallmark cards during the holidays.........
Whatever, it should be fine. As a wise independent woman and her posse said, "I'm a survivor (What!), I'm not gon give up (What!), I'm not gon stop (What!), I'm gon work harder (What!)" Thank you for the encouraging words, Destiny's Child.


This section introduces the concept of inter-communication and describes the portions of MPI that support it. It describes support for writing programs that contain user-level servers.
All point-to-point communication described thus far has involved communication between processes that are members of the same group. This type of communication is called ``intra-communication'' and the communicator used is called an ``intra-communicator,'' as we have noted earlier in the chapter.
In modular and multi-disciplinary applications, different process groups execute distinct modules and processes within different modules communicate with one another in a pipeline or a more general module graph. In these applications, the most natural way for a process to specify a target process is by the rank of the target process within the target group. In applications that contain internal user-level servers, each server may be a process group that provides services to one or more clients, and each client may be a process group that uses the services of one or more servers. It is again most natural to specify the target process by rank within the target group in these applications. This type of communication is called ``inter-communication'' and the communicator used is called an ``inter-communicator,'' as introduced earlier.
An inter-communication is a point-to-point communication between processes in different groups. The group containing a process that initiates an inter-communication operation is called the ``local group,'' that is, the sender in a send and the receiver in a receive. The group containing the target process is called the ``remote group,'' that is, the receiver in a send and the sender in a receive. As in intra-communication, the target process is specified using a (communicator, rank) pair. Unlike intra-communication, the rank is relative to a second, remote group.
All inter-communicator constructors are blocking and require that the local and remote groups be disjoint in order to avoid deadlock.
Here is a summary of the properties of inter-communication and inter-communicators:
[] Advice
to implementors.
For the purpose of point-to-point communication, communicators can be represented in each process by a tuple consisting of:
The inter-communicator cannot be discussed sensibly without considering processes in both the local and remote groups. Imagine a process P in group , which has an inter-communicator , and a process Q in group , which has an inter-communicator . Then
Assume that Q posts a receive with an explicit source argument using the inter-communicator. Then Q matches receive_context to the message context and source argument to the message source.
The same algorithm is appropriate for intra-communicators as well.
In order to support inter-communicator accessors and constructors, it
is necessary to supplement this model with additional structures, that
store information about the local communication group, and additional
safe contexts.
( End of advice to implementors.)


--- layout: post title: "slanted sidewinder" date: 2017-01-22 16:08:00 categories: experiments custom_js: - p5/p5.min.js - p5/addons/p5.dom.js - local/fs.js ---


---
layout: default
---
{% include page-intro.html %}
{{ content }}
Join our mailing list for event updates!
{% assign event = site.data.events.last %}
🎉 Launching {{ event.name }} on {{ event.date }}
Watch it live on the Ruby Galaxy Twitch channel
{% include host_header.html hosts=event.hosts %}
{{ event.description }}
{% assign event = site.data.events.last %}
{% if event.talks != nil %}
{% assign event = site.data.events.last %}
Talks for {{ event.event_text }}
{% for talk in event.talks %}
{{ talk.name }}
{{ talk.abstract }}
{{ talk.author }}
{{ talk.author_bio }}
{% endfor %}
{% endif %}
Interested in talking? Take a look at our CFP!
We are always interested in talks of all sorts, whether you are an experienced presenter, or are looking for a great place to give your first talk ever.


Choose existing lighthouse
0xc2f821d99f469d5818ce368543bcd9389e4e04c1
or
create your own
Your lighthouse created. You can connect to network
Connect with network


|
The department offers excellence academic environment with a team of highly qualified faculty members to inspire the students to develop their technical skills and impress the spirit of team work in them. Department also has state of art laboratories equipped with the computers with latest software and hardware configuration. The students of the department get placed in multinational companies and go on to attain prestigious positions.
The department has well qualified and experienced faculty members. They are specialized in different research domains like Image Processing, Data Mining, Computer Networks and in modern research areas like Bio informatics, Big data analytics in health care domain. The Faculty members contribute to academic developmen by authoring various international Journals, books and presenting research papers in international and national conferences.


Singapore Grand Prix releases 'Super Early Bird' tickets for 2020 F1 night race
SINGAPORE: Formula 1 Singapore Grand Prix released on Friday (Nov 15) "Super Early Bird" tickets for the 2020 race at promotional prices, offering patrons up to 28 per cent in savings.
The 13th edition of "the sport's original night race" will be held from Sep 18 to Sep 20 next year, in the 16th round of the 2020 FIA Formula One World Championship calendar.
The current batch of promotional tickets are up for grabs until Dec 3, with prices for the three-day ticket categories starting from S$268, Singapore GP said in a press release.
Formula 1: Ferrari's Vettel ends long wait for victory with Singapore Grand Prix triumph
READ: Formula 1 teams divided ahead of key 2021 talks
More ticket categories will be released in the coming weeks, it added, and regular prices will apply from May 13, 2020.
On top of the race along the Marina Bay Street Circuit, patrons with a valid ticket for the relevant zones will also be able to catch entertainment performances.
Visit www.singaporegp.sg to get your tickets or to find out more about the race.


Introducing Syphon
Syphon is an open source Mac OS X technology that allows applications to share frames - full frame rate video or stills - with one another in realtime. Now you can leverage the expressive power of a plethora of tools to mix, mash, edit, sample, texture-map, synthesize, and present your imagery using the best tool for each part of the job. Syphon gives you flexibility to break out of single-app solutions and mix creative applications to suit your needs.
Features
Syphon provides an ecosystem for sharing imagery between applications and new media development environments. Syphon is designed to be efficient and will not duplicate resources unnecessarily, keeping your frame rate and best interests in mind.
- Hardware accelerated surface sharing on the GPU where it belongs.
- Zero latency.
- Zero copy.
- Support arbitrary resolutions up to your GPU’s limit. Typically 16k x 16k.
- Support abritrary frame rates.
- Support alpha-channels.
- Compatible with MacOS X 10.6 (Snow Leopard) or later.
- Compatible with Legacy OpenGL, Core Profile OpenGL, and Metal back ends.
- Interoperable between renderers. Share frames between OpenGL and Metal Renders out of the box.
- A simple SDK so developers can add Syphon to just about any application.
Applications
The list of Syphon enabled applications keeps growing. Here are is a sample of interoperable applications, inlcuding live performance, content creation, show control, visualizers, development, creative coding, live coding, patching environments, game engines, projection mapping, capture tools and broadcast playout.
You can mix these tools and more to find unique solutions to your creative problems.
Developer SDK
-
Syphon.framework allows 3rd party developers to leverage frame-sharing in their applications or plugins. A simple Objective-C interface allows the publishing and acquisition of frames in very few lines of code. Under the hood, Syphon uses the power of IOSurface plus a selection of Cocoa and Core Foundation technologies to manage the communication between servers and clients. Download. Developer Documentation
-
Simple Server/Client A pair of applications to test Syphon functionality (download)
If you’d like to get involved, join us at the GitHub projects for the framework and implementations.
Proudly Sponsored By
Syphon is designed for and by new media technologists, realtime video artists and visualists. It is a labor of love, developed in the spare time of the authors. It is open, free and a gift to the new media community. If Syphon is useful to you or an application you are developing, please consider contributing or sponsoring to help continue development and support the cause.
Contact and Support
Some common questions are answered in our FAQ. If you have questions about a product which integrates Syphon, please contact the developer of that produce for support. Developers can report issues or request features for the Syphon framework on GitHub.
Authors
Syphon.framework, test suite, and initial implementations are written by Tom Butterworth and Anton Marini with major support from Vidvox and Metal implementation input from Millumin
License
Syphon.framework, test suite, and our provided reference implementations are licensed under a Simplified BSD software license.


Since ButtonDemo2
implements the ActionListener interface,
it must define each method in the interface.
For the ActionListener
interface,
there is only one method: actionPerformed()
.
Here is the program with several blanks:
public class ButtonDemo2 extends JFrame implements _________________ { JButton bChange ; // constructor public ButtonDemo2() { getContentPane().setLayout( new FlowLayout() ); bChange = new JButton("Click Me!"); getContentPane().__________( bChange ); } // listener method required by the interface public void ________________( ActionEvent evt) { . . . . . . } public static void main ( String[] args ) { ButtonDemo2 frm = new ButtonDemo2(); . . . . . } }


Accomplish more, everyday
Millions of people trust us to create beautiful websites.
When you need a kickstart in your business and you have no time for coding for your website, we will take that job for you and will build a great looking website in minutes.
“Wow. I just updated my site and it was SO SIMPLE. I am blown away.  Thanks for being so awesome. High fives!”
When you need a kickstart in your business and you have no time for coding for your website, xPider will take that job for you and will build a great looking website in minutes.
Millions of people around the world have already made ice cream the place where their dream happens.


As of 4 months ago, my doctor has been giving me a prescription for Tramacet for chronic pain. Tramacet contains 325mg acetaminophen (which does nothing for me, alone or in conjunction), and 37.5mg Tramadol in each caplet. I take it 2x a week, usually 2 pills (75mg), or 4 pills (150mg) if I'm having one of my more painful days. Every time I take them the effects are consistent.
I know it seems like a long time, but usually the drug kicks in fully after 2.5 - 3 hours, with a total duration of 6-8 hours. Sometimes with 150mg doses it kicks in after only 1 hour.
The most immediate effect, of course, is analgesia (painkilling) which usually works relatively well. Depending on the size of the dose, there's a definite, (mild-moderate) slowing of reflexes. I find there's a mild euphoria at 75mg, a moderate euphoria at higher doses. I get a sensation of pleasure that seems to be running through my veins throughout my entire body as well.
Oddly enough, there's also one downside to the effects. I get very irritable. I don't actually feel irritated during the course of the drug in and of itself, but when people talk to me, it takes only the fact that they are talking to me to make me feel very annoyed. The slightest little things somebody might say will irritate me immensely and often result in me biting their heads off at something that would otherwise cause no irritation at all. Also, last night I had tramacets in conjunction with cough-syrup that had codeine in it, which seemed to increase this effect a good deal.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Sales-IF
About
Services
Contact
Search products
through Shop
through Site
search
Provided by:
Categories
{{category.name}}
{{category.name}}
{{subcategory.name}}
Some caption
Second Caption
Third Caption


|
SecurBot
0.1
A cutting edge robotic security platform
|
Interface class for the ADS1015 chip. More...
#include <ADS1015.hpp>
Classes | |
| union | address_pointer_register_map |
| address pointer register mapping. More... | |
| union | config_register_map |
| configuration register mapping. More... | |
| union | conversion_register_map |
| Conversion register mapping. More... | |
Public Member Functions | |
| ADS1015 (i2c_port_t i2c_bus, uint8_t i2c_address) | |
| Construct a new ADS1015 object. More... | |
| esp_err_t | configure () |
| Write current config to configuration register. More... | |
| esp_err_t | startReading (uint8_t channel_number) |
| Start reading the specified channel. More... | |
| esp_err_t | isReading (bool &value) |
| Check is ADC is making a measurement. More... | |
| esp_err_t | getValue (float &value) |
| Get the latest reading. More... | |
| esp_err_t | getConfig (ADS1015::config_register_map &map) |
| Get the chip current configuration. More... | |
| ADS1015::ADS1015 | ( | i2c_port_t | i2c_bus, |
| uint8_t | i2c_address | ||
| ) |
Construct a new ADS1015 object.
Construct an object interfacing with the chip at the specified address
| i2c_bus | target chip i2c bus number |
| i2c_address | target chip i2c address |
| esp_err_t ADS1015::configure | ( | ) |
Write current config to configuration register.
Write current config to the chip configuration register
| esp_err_t ADS1015::getConfig | ( | ADS1015::config_register_map & | map | ) |
Get the chip current configuration.
Read the current value of the configuration register and fill up the mapping
| map | configuration mapping to fill |
| esp_err_t ADS1015::getValue | ( | float & | value | ) |
Get the latest reading.
Reads the value in the conversion register and parse it according to configured scale
| value | voltage (volts) |
| esp_err_t ADS1015::isReading | ( | bool & | value | ) |
Check is ADC is making a measurement.
Return config register OS bit as bool to check if a reading is in progress
| value | set to true if ADC is measuring voltage. Else set to false |
| esp_err_t ADS1015::startReading | ( | uint8_t | channel_number | ) |
Start reading the specified channel.
Start a reading on the ADC by writing the proper channel in mux register
| channel_number | Channel to read (0-3) |


With sound recognition technology at its core, iheardit detaches measurements from content consumption devices. Analogue media analysis has never been more digital.
LEARN MOREIheardit is a system of active analysis of media consumption, based on the technology of sound recognition. Used in a mobile application enables an accurate measurement of analogue radio listenership.
Our goal is to allow you to measure your audience rate as easily as measuring the number of unique web users.
Get Started!Metrics collected and displayed in real-time.
Minimal impact on auditors devices.
Measurements made based on the surroundings.
User privacy inherent with technology choices.
The dynamic development of new media made it possible to quickly and accurately analyze the consumption of content on the Internet, resulting from the bi-directional character of network communication. In the era of smartphones, on the borderline of mobile technology and the Internet, new possibilities arise. System that finally allows for equally reliable monitoring of any broadcasted - one directional content source.
Our system does not require active participation of respondents. Single installation, supported by basic demographic data is all that it takes. We achieve required speed and accuracy of the measurements by using digital signatures of the sound samples of the surroundings. Data in this form makes it impossible to extract any sensitive information. It only allows checking similarity to other samples, in this case to the original signal of a radio station.
Among our current goals are perfecting the accuracy of the measurements, further development of intelligent techniques maximizing coverage of the transmission selection, building a platform for data display and analysis. Observation of the flow of listeners between stations, analysis of recipients' reactions to specific positions in the programmes of individual stations, profiling of recipient groups in terms of the way radio content is consumed.
Want to learn more? That's great! Give us a call or send us an email and we will get back to you as soon as possible!
+48 664 708 411


JTS Tech Services can repair the following generations of iPhone devices:
iPhone 4
iPhone 4s
iPhone 5
iPhone 5c
iPhone 5s
iPhone 6
iPhone 6 Plus
JTS Tech Services can repair the following generations of iPad devices:
iPad 1st generation
iPad 2nd generation
iPad 3rd generation
iPad 4th generation
iPad Air
iPad Mini
iPad Mini Retina
JTS Tech Services can repair the following generations of iPod devices:
iPod Touch 2nd generation
iPod Touch 3rd generation
iPod Touch 4th generation
iPod Touch 5th generation
JTS Tech Services can repair the following generations of Samsung Galaxy devices:
Samsung Galaxy S2
Samsung Galaxy S3
Samsung Galaxy S4
All other devices depend on availability of parts, as well as repairability.
Please contact JT directly for more details.